1. Лучший говнокод

    В номинации:
    За время:
  2. PHP / Говнокод #4356

    +158

    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
    <?
    // регистрационная информация (пароль #1)
    // registration info (password #1)
    $mrh_pass1 = "Morbid11";
    
    // чтение параметров
    // read parameters
    $out_summ = $_REQUEST["OutSum"];
    $inv_id = $_REQUEST["InvId"];
    $shp_item = $_REQUEST["Shp_item"];
    $crc = $_REQUEST["SignatureValue"];
    
    $crc = strtoupper($crc);
    
    $my_crc = strtoupper(md5("$out_summ:$inv_id:$mrh_pass1:Shp_item=$shp_item"));
    
    // проверка корректности подписи
    // check signature
    if ($my_crc != $crc)
    {
      echo "bad sign\n";
      exit();
    }
    
    // проверка наличия номера счета в истории операций
    // check of number of the order info in history of operations
    $f=@fopen("order.txt","r+") or die("error");
    
    while(!feof($f))
    {
      $str=fgets($f);
    
      $str_exp = explode(";", $str);
      if ($str_exp[0]=="order_num :$inv_id")
      { 
    	echo "Операция прошла успешно\n";
    	echo "Operation of payment is successfully completed\n";
      }
    }
    fclose($f);
    ?>

    учитесь, как надо с онлайн-наличкой работать
    http://www.robokassa.ru/Doc/demo_php.zip

    xXx_totalwar, 12 Октября 2010

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

    +158

    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
    <?
    if(!isset($_POST['vote'])){
    print"<form action='' method='post' name='vote'>";
    print"<table width='400' height='50' align='center'>";
    $conn_id=@mysql_connect("localhost","root","") or
     die("Ошибка соединения с сервером БД !");
    @mysql_select_db("db");
    $q=@mysql_query("SELECT * FROM `pools` WHERE status='on'",$conn_id) or
     die("Ошибка запроса к БД !");
    if(@mysql_num_rows($q)==0){
    echo"Голосования не найдены !";
    }else{
    $id=mt_rand(1,@mysql_num_rows($q));
    unset($q);
    $q=@mysql_query("SELECT * FROM `pools` WHERE id='".$id."'",$conn_id) or
     die("Ошибка запроса к БД !");
    $row=@mysql_fetch_array($q);
    print"<tr><Td colspan='2'>Q: ".$row['question']."</td>
    </tr>";
    unset($q);
    $vote_check=@mysql_query("SELECT id FROM `alredy_vote` WHERE ip='".
     $_SERVER['REMOTE_ADDR']."'",$conn_id) or die("Ошибка запроса к БД !");
    $q=@mysql_query("SELECT id,value FROM `pools_answs` WHERE vote_id='".
     $id."'",$conn_id) or die("Ошибка запроса к БД !");
    if(@mysql_num_rows($q)==0){
    die("Вопросы не найдены !");
    }else{
    while($row=@mysql_fetch_array($q)){
    $row2=@mysql_fetch_array($q2);
    if(@mysql_num_rows($vote_check)!=0){
    $q2=@mysql_query("SELECT count FROM `pools_answs` WHERE id='".$row['id']."'",
     $conn_id) or die("Ошибка запроса к БД !");
    print"<tr><td>".$row['value']."</td><td>".
     $row2['count']."</td></tr>";
    }else{
    print"<tr><td>".$row['value']."</td><td><input
     type='radio' name='answer' value='".$row['id']."'></td></tr>";
    print"<input type='hidden' name='id' value='".$id."'>";
    print"<tr><td colspan='2'><input type='submit' name='vote'
     value='Проголосовать'></td></tr>";
    }
    }
    }
    }
    print"</table>";
    print"</form>";
    @mysql_close($conn_id);
    }else{
    $id=$_POST['id'];
    $answer=$_POST['answer'];
    $conn_id=@mysql_connect("localhost","root","")
     or die("Ошибка во время запроса к серверу !");
    @mysql_select_db("db");
    $q=@mysql_query("SELECT id FROM `aredy_vote` WHERE ip='".
     $_SERVER['REMOTE_ADDR']."'",$conn_id)
     or die("Ошибка во время запроса к серверу !");
    if(@mysql_num_rows($q)!=0){
    print"Вы уже участвовали в данном голосовании !";
    }else{
    $q=@mysql_query("INSERT into `alredy_vote` VALUES('','".$id."','".
     $_SERVER['REMOTE_ADDR']."')",$conn_id) or die("Ошибка запроса к БД !");
    unset($q);
    $q=@mysql_query("UPDATE `pools_answs` SER count=count+1 WHERE id='".$id.
     "' AND vote_id='".$_POST['answer']."'",$conn_id) or die("Ошибка запроса к БД !");
    print"Ваш голос учтён. Спасибо за участие !!";
    }
    @mysql_close($conn_id);
    }
    ?>

    Приятного аппетита ;-)

    nikelin, 11 Октября 2010

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

    +158

    1. 1
    $dest = preg_replace( '#[^\\w\\d]+#', '', $source );

    Ответ автора сего творения: "\\d - да, наверное лишнее, но не помешает"

    mulder, 10 Октября 2010

    Комментарии (8)
  5. JavaScript / Говнокод #4302

    +158

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    function tv_cat(iz){
    if (iz%2==0)
    {
    	document.getElementById("cat_tv_header3").innerHTML=
    		"<a href='#'  onclick=' javascript: tv_cat(1);'><img src='/img2/but_tv.gif' width='142' height='30' border='0'>";
    }
    else
    {
    	document.getElementById("cat_tv_header3").innerHTML=
    		"<a href='#'  onclick= javascript: tv_cat(2);'><img src='/img2/but_catalog.gif' width='142' height='30' border='0'>";
    }
    }

    "рекурсия", епт

    xXx_totalwar, 07 Октября 2010

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

    +158

    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
    <?php
    class WikiParser{
    private $p;
    function __construct($p){
    $this->p=$p;
    }
    function parse(){
    $this->p = preg_replace('/\[\[([^\/"?[=|]+?)\]\]/siu', '<a href="link.php?sea=$1">$1</a>', $this->p);
    $this->p = preg_replace('/\[\[([^\/"?[=|]+?)\|(.+?)\]\]/siu', '<a href="link.php?sea=$1">$2</a>', $this->p);
    $this->p = preg_replace('/\[\[([a-z]+?:\/\/[^"|]*?)\|([^"?[=|]+?)\]\]/siu', '<a href="$1">$2</a>', $this->p);
    $this->p = preg_replace('/\[\[([a-z]+?:\/\/[^"|]*?)\]\]/siu', '<a href="$1">$1</a>', $this->p);
    
    $this->p = preg_replace('/&lt;&lt;([^\/"?[=|]+?)&gt;&gt;/siu', '<a href="link.php?sea=$1">$1</a>', $this->p);
    $this->p = preg_replace('/&lt;&lt;([^\/"?[=|]+?)\|(.+?)&gt;&gt;/siu', '<a href="link.php?sea=$1">$2</a>', $this->p);
    $this->p = preg_replace('/&lt;&lt;([a-z]+?:\/\/[^"|]*?)\|([^"?[=|]+?)&gt;&gt;/siu', '<a href="$1">$2</a>', $this->p);
    $this->p = preg_replace('/&lt;&lt;([a-z]+?:\/\/[^"|]*?)&gt;&gt;/siu', '<a href="$1">$1</a>', $this->p);
    $this->p = preg_replace('/\*\*\*?([^"?=#%]+?)\*\*\*?/siu', '<b>$1</b>', $this->p);
    $this->p = preg_replace('/\-\-\-?([^"?=#%]+?)\-\-\-?/siu', '<s>$1</s>', $this->p);
    $this->p = preg_replace('/\/\/\/?([^"?=#%]+?)\/\/\/?/siu', '<i>$1</i>', $this->p);
    $this->p = preg_replace('/\r?\n\r?\n/', '</p><p>', $this->p);
    $this->p = preg_replace('/\n/', '<br/>', $this->p);
    $this->p = preg_replace('/\{\{locked\}\}/', '<table style="clear: both; width: 90%; border-color:#333333; border-style: solid; border-width: 1px 1px 1px 2px; padding: 2px; margin: 1px auto 1px auto; vertical-align: center; background-color: #fefefe; text-align: left;"><tr><td style="vertical-align: middle">Статья огорожена от <a href="link.php?sea=вапераст">ваперастов</a></td></tr></table>', $this->p);
    $this->p = preg_replace('/\{\{locked\|(.*?)\}\}/', '<table style="clear: both; width: 90%; border-color:#333333; border-style: solid; border-width: 1px 1px 1px 2px; padding: 2px; margin: 1px auto 1px auto; vertical-align: center; background-color: #fefefe; text-align: left;"><tr><td style="vertical-align: middle">Статья огорожена от $1</td></tr></table>', $this->p);
    $this->p = preg_replace('/\{\{недопись\}\}/siu', '<table style="clear: both; width: 90%; border-color:#333333; border-style: solid; border-width: 1px 1px 1px 2px; padding: 2px; margin: 1px auto 1px auto; vertical-align: center; background-color: #fefefe; text-align: left;"><tr><td style="vertical-align: middle"><b>Недопись</b><br>Ваша статья - Гавно. Короткая, тупая и малоинформативная</td></tr></table>', $this->p);
    $this->p = preg_replace('/\{\{недопись\|([^|]*?)\}\}/siu', '<table style="clear: both; width: 90%; border-color:#333333; border-style: solid; border-width: 1px 1px 1px 2px; padding: 2px; margin: 1px auto 1px auto; vertical-align: center; background-color: #fefefe; text-align: left;"><tr><td style="vertical-align: middle">Недопись<br>Ваша статья - $1</td></tr></table>', $this->p);
    $this->p = preg_replace('/\{\{moved\|(.*?)\}\}/', '<table style="clear: both; width: 90%; border-color:#333333; border-style: solid; border-width: 1px 1px 1px 2px; padding: 2px; margin: 1px auto 1px auto; vertical-align: center; background-color: #fefefe; text-align: left;"><tr><td style="vertical-align: middle"><b>Статья перемещена</b><br>--&gt;$1</td></tr></table>', $this->p);
    $this->p = preg_replace('/[[<]#[]>]/', '', $this->p);
    if(!preg_match('#^<p>.*</p>$#siu', $this->p)) $this->p='<p>'.$this->p.'</p>';
    $this->p = preg_replace('/<p><\/p>/siu', '', $this->p);   
    }
    function get(){return $this->p;}
    }
    ?>

    Без комментариев

    startapp, 08 Сентября 2010

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

    +158

    1. 1
    2. 2
    3. 3
    4. 4
    $rows=$this->DB->FetchArray($query, MYSQL_ASSOC);
    @reset($rows);
     while (list($key, $val)=@each($rows))
    $this->$key=$val;

    Ы

    ReallyBugMeNot, 08 Сентября 2010

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

    +158

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    if ($_REQUEST['name']){
    	$nameProduct = $_REQUEST['name'];
    	$products = $db->products($_REQUEST['name']);
    } else {
    	$products = 'error';	
    }
    
    if ($products == 'error'){
    	$http->redirect('index.php');
    }

    Из частного проекта.
    Во-первых почему-бы не использовать $nameProduct второй раз вместо $_REQUEST['name']?
    Во-вторых вместо $products = 'error'; можно сразу было сделать редирект, т.к. все последующие использования $products не имеют смысла, если редирект выполнен.

    mikhailu, 06 Сентября 2010

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

    +158

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    $sql = "SELECT 
    			t.topic_id							
    		FROM 
    			".Config::Get('db.table.topic')." as t,	
    		WHERE 
    			1=1					
    		LIMIT ?d, ?d";

    5-6 строки мешают уснуть. Из того же LiveStreet..

    hybroid, 04 Сентября 2010

    Комментарии (17)
  10. C++ / Говнокод #4120

    +158

    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
    const char* def = "DEFINE";
    while(*def && (m_position != m_end) && (*m_position == charT(*def)))
      ++m_position, ++def;
    if((m_position == m_end) || *def)
    {
      // Rewind to start of (? sequence:
      --m_position;
      while(this->m_traits.syntax_type(*m_position) != regex_constants::syntax_open_mark) --m_position;
      fail(regex_constants::error_perl_extension, m_position - m_base);
      return false;
    }
    re_brace* br = static_cast<re_brace*>(this->append_state(syntax_element_assert_backref, sizeof(re_brace)));
    br->index = 9999; // special magic value!
    if(this->m_traits.syntax_type(*m_position) != regex_constants::syntax_close_mark)
    {
      // Rewind to start of (? sequence:
      --m_position;
      while(this->m_traits.syntax_type(*m_position) != regex_constants::syntax_open_mark) --m_position;
      fail(regex_constants::error_perl_extension, m_position - m_base);
      return false;
    }

    Фрагмент из boost::regex, "magic value!", улыбнуло =]
    basic_regex_parser.hpp : 2160

    rudvil, 28 Августа 2010

    Комментарии (0)
  11. PHP / Говнокод #4084

    +158

    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
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    <table border="1" class="new" bgcolor ="#F5F5F5">
    
             <tr>
                    <td><b>День</b></td>
                    <td><b>До обеда</b></td>
                    <td><b>После обеда</b></td>
                    <?php
                    while ($row = mysql_fetch_assoc($query)){
    
                        $date = $row['date'];
                        $Id_date = convert($date);
                        $date = substr ($date,8);
    
                        //Проверка на повторность дня (один день-два события!)
    
                        if ($count == $date){
    
                           
                        $time = $row['time'];
                        if ($time == 'До обеда'){
    
                        echo '<td>';
                        $judge = $row['judge'];
                        $query1 = mysql_query ("SELECT `desc` FROM `judge` WHERE `id` = $judge",$db);
                        $row1 = mysql_fetch_assoc ($query1);
                        $judge1 = $row1['desc'];
                        
                        //"Совещание" красным
    
                        if ($judge1 == 'Совещание'){
                            echo "<td class='new_color'>$judge1</td>";
                        }
                        else{
                        echo "<td>$judge1</td>";}
                        echo "</td>";
                        }
                        elseif ($time == 'После обеда'){
    
                        
                        $judge = $row['judge'];
                        $query1 = mysql_query ("SELECT `desc` FROM `judge` WHERE `id` = $judge",$db);
                        $row1 = mysql_fetch_assoc ($query1);
                        $judge1 = $row1['desc'];
                        if ($judge1 == 'Совещание'){
                            echo "<td class='new_color'>$judge1</td>";
                        }
                        else{
                        echo "<td>$judge1</td>";}
    
                       echo "</td>";
                       echo "</tr>";
                        }
    
                        
                        }
                        // Блок для выполнения при отрицательной проверки на повторность дня
    
                        else {
                        $res1 = rus_days($Id_date);
                        echo "<tr>";
                        echo "<td>$date&nbsp$res1</td>";
                        $time = $row['time'];
                        if ($time == 'До обеда'){
                         
                          
                        $judge = $row['judge'];
                        $query1 = mysql_query ("SELECT `desc` FROM `judge` WHERE `id` = $judge",$db);
                        $row1 = mysql_fetch_assoc ($query1);
                        $judge1 = $row1['desc'];
                        if ($judge1 == 'Совещание'){
                            echo "<td class='new_color'>$judge1</td>";
                        }
                        else{
                        echo "<td>$judge1</td>";}
                            
                        }
                        elseif ($time == 'После обеда'){
    
                         echo "<td>";
                      
                        $judge = $row['judge'];
                        $query1 = mysql_query ("SELECT `desc` FROM `judge` WHERE `id` = $judge",$db);
                        $row1 = mysql_fetch_assoc ($query1);
                        $judge1 = $row1['desc'];
                        if ($judge1 == 'Совещание'){
                            echo "<td class='new_color'>$judge1</td>";
                        }
                        else{
                        echo "<td>$judge1</td>";}
    
                        echo "</td>";
                        echo "</tr>";
                        }

    Формирование таблицы. Данные тянутся из БД.

    smitty, 24 Августа 2010

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