1. PHP / Говнокод #5437

    +163

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    <?if($_POST[btn]=="Отправить") $btn="12";?>
    <form method="post" action="actn.php">
    <button value="12" name="btn" type="submit">Отправить</button>
    </form>
    <? echo $btn; ?>

    Uchkuma, 29 Января 2011

    Комментарии (10)
  2. PHP / Говнокод #5436

    +160

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    <?php
     
    if ( !defined ( "DATALIFEENGINE" )){
        die ( "Hacking Attemp!" );
    }
     
    $buff = dle_cache( "main", $config['skin'] );
     
    $sql_result = mysql_query ( "SELECT * FROM " . PREFIX . "_post WHERE approve='1' ORDER BY date DESC LIMIT 0, 6" );
     
    $buff = <<<HTML
    <table class="choser">
    HTML;
     
    $rows=mysql_fetch_array($sql_result);
     
    for($i=0;$i<mysql_num_rows($sql_result);$i++){
        $row[$i] = array ( 'title'=>$rows['title'], 'category'=>$rows['category'], 'alt_name'=>$rows['alt_name'], 'full_story'=>$rows['full_story'], 'id'=>$rows['id'] );
        $link[$i] = $config['http_home_url'] . get_url( $row[$i]['category'] ) . "/" . $row[$i]['id'] . "-" . $row[$i]['alt_name'] . ".html";
        $title[$i] = stripslashes ( $row[$i]['title'] );
        preg_match ( "#<img src=[\"\'](.+?)[\"\'](.*)/>#si", $row[$i]['full_story'], $match );
        if ( trim ( $match[1] ) == '' ){
          preg_match ( "#<!--TBegin--><a href=[\"\'](.+?)[\"\'](.*)></a><!--TEnd-->#si", $row[$i]['full_story'], $match );
       }
       $img[$i] = '<a href="'.$link[$i].'"><img src="'.$match[1].'" alt="'.$title[$i].'" /></a>';
        $full_story[$i] = strip_tags ( stripslashes ( $row[$i]['full_story'] ));
        if ( strlen ( $full_story ) > 100 ){
          $full_story = substr ( $full_story, 0, 100 ) . ' ...';
       }
    }
     
    $buff .= <<<HTML
    <tr>
       <td rowspan=5>
         {$img[1]}
         {$row[1]['title']}
         {$full_story[1]}  
       </td>
     
       <td>
         {$row[2]['title']}
         {$full_story[2]}  
       </td>
    </tr>
     
    <tr>
       <td>
         {$row[3]['title']}
         {$full_story[3]}
       </td>
    </tr>
     
    <tr>
       <td>
         {$row[4]['title']}
         {$full_story[4]}
       </td>
    </tr>
     
    <tr>
       <td>
         {$row[5]['title']}
         {$full_story[5]}
       </td>
    </tr>
     
    <tr>
       <td>
         {$row[6]['title']}
         {$full_story[6]}
       </td>
    </tr>
    </table>
    HTML;
     
    create_cache ( "main", $buff, $config['skin']);
     
    echo $buff;
     
    ?>

    qbasic, 29 Января 2011

    Комментарии (9)
  3. PHP / Говнокод #5435

    +162

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    function get_doc_status($date_valid) {
    	$cur_mk = mktime(0, 0, 0, date("m"), date("d"), date("Y"));
    	$date_valid = explode(".", $date_valid);
    	$valid_mk = mktime(0, 0, 0, $date_valid[1], $date_valid[0], $date_valid[2]);
    
    	if($valid_mk <= $cur_mk) {
    		return 2;
    	}
    
    	$month = intval($date_valid[1]);
    	$year = intval($date_valid[2]);
    
    	if(($month > 1) && ($month < 12)) {
    		$prev_month = $month - 1;
    		$prev_year = $year;
    	} elseif($month == 1) {
    		$prev_month = 12;
    		$prev_year = $year - 1;
    	}
    
    	$month_mk = 60 * 60 * 24 * 30;
    	$prev_mk = mktime(0, 0, 0, $prev_month, $date_valid[0], $prev_year);
    
    	if(($valid_mk - $prev_mk) <= $month_mk) {
    		return 1;
    	}
    	return 0;
    }

    Задача со слов автора:
    Есть определенная дата (что-то типа срока годности), есть текущая дата. Задача заключается в выводе статуса даты.
    1. До истечения срока больше месяца - функция возвращает 0
    2. До истечения меньше месяца - 1
    3. Срок истек - 2

    Товарисчь не знал про time() и strtottime().

    WhiteRat, 29 Января 2011

    Комментарии (4)
  4. PHP / Говнокод #5432

    +165

    1. 1
    2. 2
    //$viewPath = explode(DIRECTORY_SEPARATOR, $this->_helper->viewRenderer->getViewScript());
     $viewPath = explode("/", $this->_helper->viewRenderer->getViewScript());

    Первое закомментировали, второе вставили. Отличный рефакторинг!

    anycolor, 28 Января 2011

    Комментарии (5)
  5. PHP / Говнокод #5431

    +158

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    $userList = "";
    foreach ($this->currentUsers as $k => $v)
    { 
        $userList .= ($v->first_name . (empty($v->middle_name) ? "" : " " . $v->middle_name)  . " " . $v->last_name . ", ");
    }
    $userList = substr($userList, 0, -2);
    ?>
    <?= $userList ?>

    Индусы отдыхают.

    anycolor, 28 Января 2011

    Комментарии (12)
  6. PHP / Говнокод #5430

    +162

    1. 1
    2. 2
    3. 3
    4. 4
    <?php
    if ((substr($_SERVER['USER_AGENT'],0,6)=='Yandex') || (substr($_SERVER['USER_AGENT'],0,11)=='YaDirectBot')) $bot='yandex';
    else if ((strpos($_SERVER['USER_AGENT'],'Googlebot')!==false) || (strpos($_SERVER['USER_AGENT'],'Mediapartners-Google')!==false) || (strpos($_SERVER['USER_AGENT'],'Google Search Appliance')!==false)) $bot='google';
    else if (substr($_SERVER['USER_AGENT'],0,12)=='StackRambler') $bot='rambler';

    qbasic, 28 Января 2011

    Комментарии (9)
  7. PHP / Говнокод #5426

    +165

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    function func()
    {
    	$func = array(
    		"*4164-4622-1270" => "Core::Exchange->dest1",
    		"*8273-7121-7643" => "Core::Exchange->dest2",
    		"*8710-4879-0216" => "Core::Exchange->dest3",
    		"*5566-0506-6230" => "Core::Exchange->dest4",
    		"*0635-1830-1345" => "Core::Exchange->dest5",
                           .....
    	);
    	return $func;
    }
    	
    function eF($id) 
    {
    	if ($id == 1) return "*4164-4622-1270";
    	if ($id == 2) return "*8273-7121-7643";
    	if ($id == 3) return "*8710-4879-0216";
    	if ($id == 4) return "*5566-0506-6230";
               if ($id == 5) return "*0635-1830-1345";
    	if ($id == 6) return "*3265-0565-4871";
                .....
    }

    Диспетчер функций с встроенной защитой от кулхацкеров. (dest1...dest5 - сохранены оригинальные имена)

    tyler, 28 Января 2011

    Комментарии (3)
  8. PHP / Говнокод #5425

    +162

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if(!$RISK && in_array($USER->GetID(), array("1", "14"))){
    	$RECCURING = true;
    }else{
    	$RECCURING = false;
    }

    Подписка на оплату. Магические числа 1 и 14.

    hdkeeper, 28 Января 2011

    Комментарии (10)
  9. PHP / Говнокод #5424

    +164

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    $proArray = array();
    while(strlen($result))
    {
    	// name
    	$keypos= strpos($result,'=') ;
    	$keyval = substr($result,0,$keypos);
    	// value
    	$valuepos = strpos($result,'&') ? strpos($result,'&') : strlen($result);
    	$valval = substr($result,$keypos+1,$valuepos-$keypos-1);
    	// decoding the respose
    	$proArray[$keyval] = $valval;
    	$result = substr($result,$valuepos+1,strlen($result));
    }

    Разбор URL-encoded ответа от платёжной системы.
    Знал ли автор про функцию parse_str() ?

    hdkeeper, 28 Января 2011

    Комментарии (27)
  10. PHP / Говнокод #5422

    +160

    1. 1
    2. 2
    3. 3
    if ( isset($this->q_param["submit_form_one"]) && is_numeric($this->q_param["submit_form_one"]) && $this->q_param["submit_form_one"] == 1 ){
    //тут разный код
    }

    ппц

    ilyamx, 28 Января 2011

    Комментарии (26)