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

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

    +172

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    if (!cpMenu->IsSelected())
    	{
    		std::vector<UINT> menus;
    		menus.push_back(_menuIndex.Value);	
    		if (!_SelectMenu(cpTarget, _instanceID.HasValue ? _instanceID.Value : -1, &menus[0], (UINT)menus.size(), SelectionType::Exclusive))
    			return CPNGObject();
    	}

    без вектора тут ну не обойтись :)

    qwertyu, 13 Апреля 2011

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

    +161

    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
    if(trim($_POST['Event_Name']) != '') {
          if(trim($_POST['StartDate']) != '') {
            if(trim($_POST['EndDate']) != '') {
              if(trim($_POST['EndDate']) != '') {
                if(trim($_POST['Community_Id']) != 0) {
                  if(trim($_POST['Event_Location']) != '') {
                    if(trim($_POST['Event_Latitude']) != '' && is_numeric($_POST['Event_Latitude'])) {
                      if(trim($_POST['Event_Longitude']) != '' && is_numeric($_POST['Event_Longitude'])) {
                        
                         ...................................................
                        // Далее много строк страшного кода с вызовами самописных методов для работы с датой. Аля:
                          $hrs = _ampmto24hrs($hrs, $ampm);
                          $StartDateTime = dateandtime2timestamp($_POST['StartDate'], $hrs, $mins);
                       .....................................................
                        // Далее формируется SQL код. Привожу интересный кусок и обращаю внимание на название полей таблицы, вида Darren_XXXXXXX. 
                        // Darren - имя заказчика
                          $sql .= "`Event_Featured` = '".(($_POST['Event_Featured'] == 'on')?'True':'False')."', ".
                            "`Submitters_Email` = '', ".
                            "`Darren_EventDisplayName` = '"._clean($_POST['Darren_EventDisplayName'])."', ".
                            "`Darren_ShortDesc` = '"._clean($_POST['Darren_ShortDesc'])."', ".
                            "`Darren_Desc` = '"._clean($_POST['Darren_Desc'])."', ".
                    ........................................................
                      // Заканчивается сие безобразие все тем же забором
                           } else  {
                            $error['error_mistake'] = true;
                          }
                        } else {
                          $error['error'] = true;
                          $error['Event_URL'] = true;
                        }
                      } else {
                        $error['error'] = true;
                        $error['Event_Longitude'] = true;
                      }
                    } else {
                      $error['error'] = true;
                      $error['Event_Latitude'] = true;
                    }
                  } else {
                    $error['error'] = true;
                    $error['Event_Location'] = true;
                  }
                } else {
                  $error['error'] = true;
                  $error['Community_Id'] = true;
                }
              } else {
                $error['error'] = true;
                $error['EndDate'] = true;
              }
            } else {
              $error['error'] = true;
              $error['EndDate'] = true;
            }
          } else {
            $error['error'] = true;
            $error['StartDate'] = true;
          }
        } else {
          $error['error'] = true;
          $error['Event_Name'] = true;
        }

    А вот визитная карточка автора этого кода: date_default_timezone_set('Asia/Calcutta'). Думаю, что этим все сказано.

    SunnyMagadan, 12 Апреля 2011

    Комментарии (8)
  4. SQL / Говнокод #6315

    −856

    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
    ALTER   PROCEDURE Estimate  @Goods_ID int ,@Workshop_ID int AS
    
    SELECT 9, null, null,  'Арматура',null, null ,  null,  null
    Union
    SELECT     8, dbo.Charges.FK_TypeCh, dbo.Charges.ID, '       '+dbo.Charges.NAME, dbo.Charge_Price.KBO,   
    	             dbo.Charges.Cost, Round(dbo.Charges.Cost*dbo.Charge_Price.KBO,1), 
    		Round( dbo.Charges.Cost*dbo.Charge_Price.KBO/ dbo.Goods.volume,1)
    FROM         dbo.Charge_Price INNER JOIN
                          dbo.Charges ON dbo.Charge_Price.FK_Charge = dbo.Charges.ID INNER JOIN
                          dbo.Workshop ON dbo.Charge_Price.FK_Workshop = dbo.Workshop.ID INNER JOIN
    	        dbo.Goods ON dbo.Charge_Price.FK_Goods= dbo.Goods.ID	
    WHERE     (dbo.Charge_Price.FK_Workshop = 6) AND (dbo.Charge_Price.FK_Goods = @Goods_ID)
    Union
    SELECT     7, null, null,'         Всего  по арматуре', null,   null,Round( SUM( dbo.Charges.Cost*dbo.Charge_Price.KBO) ,1)as Сумма, 
    	Round(SUM( dbo.Charges.Cost*dbo.Charge_Price.KBO/ dbo.Goods.volume),1)
    FROM         dbo.Charge_Price INNER JOIN
    	      dbo.Charges ON dbo.Charge_Price.FK_Charge = dbo.Charges.ID INNER JOIN
                        dbo.Workshop ON dbo.Charge_Price.FK_Workshop = dbo.Workshop.ID INNER JOIN
    	        dbo.Goods ON dbo.Charge_Price.FK_Goods= dbo.Goods.ID	
    WHERE     (dbo.Charge_Price.FK_Workshop = 6) AND (dbo.Charge_Price.FK_Goods = @Goods_ID)
    Union
    /*
      Ещё мурнадцать запросов с объединением
    */
    UNION
    SELECT     -3,  null, null,'         Полная себестоимость',   null, null, Round(SUM( dbo.Charges.Cost*dbo.Charge_Price.KBO)*1.05,1) as Сумма, 
    	Round(SUM( dbo.Charges.Cost*dbo.Charge_Price.KBO/ dbo.Goods.volume)*1.05,1)
    FROM         dbo.Charge_Price INNER JOIN
    	      dbo.Charges ON dbo.Charge_Price.FK_Charge = dbo.Charges.ID INNER JOIN
                        dbo.Workshop ON dbo.Charge_Price.FK_Workshop = dbo.Workshop.ID INNER JOIN
    	        dbo.Goods ON dbo.Charge_Price.FK_Goods= dbo.Goods.ID	
    WHERE    ( (dbo.Charge_Price.FK_Workshop = @Workshop_ID)  OR  (dbo.Charge_Price.FK_Workshop = 6)   OR
    		 (dbo.Charge_Price.FK_Workshop = 7) )AND (dbo.Charge_Price.FK_Goods = @Goods_ID) 
    UNION 
    SELECT     -4,  null, null,'         Плановые накопления',   null, null, Round(SUM( dbo.Charges.Cost*dbo.Charge_Price.KBO)*0.1575,1) as Сумма, 
    	Round(SUM( dbo.Charges.Cost*dbo.Charge_Price.KBO/ dbo.Goods.volume)*0,1575,1)
    FROM         dbo.Charge_Price INNER JOIN
    	      dbo.Charges ON dbo.Charge_Price.FK_Charge = dbo.Charges.ID INNER JOIN
                        dbo.Workshop ON dbo.Charge_Price.FK_Workshop = dbo.Workshop.ID INNER JOIN
    	        dbo.Goods ON dbo.Charge_Price.FK_Goods= dbo.Goods.ID	
    WHERE    ( (dbo.Charge_Price.FK_Workshop = @Workshop_ID)  OR  (dbo.Charge_Price.FK_Workshop = 6)   OR
    		 (dbo.Charge_Price.FK_Workshop = 7) )AND (dbo.Charge_Price.FK_Goods = @Goods_ID) 
    UNION
    SELECT     -5,  null, null,'         Цена оптовая',   null, null, Round(SUM( dbo.Charges.Cost*dbo.Charge_Price.KBO)*1.2075,1) as Сумма, 
    	Round(SUM( dbo.Charges.Cost*dbo.Charge_Price.KBO/ dbo.Goods.volume)*1,2075,1)
    FROM         dbo.Charge_Price INNER JOIN
    	      dbo.Charges ON dbo.Charge_Price.FK_Charge = dbo.Charges.ID INNER JOIN
                        dbo.Workshop ON dbo.Charge_Price.FK_Workshop = dbo.Workshop.ID INNER JOIN
    	        dbo.Goods ON dbo.Charge_Price.FK_Goods= dbo.Goods.ID	
    WHERE    ( (dbo.Charge_Price.FK_Workshop = @Workshop_ID)  OR  (dbo.Charge_Price.FK_Workshop = 6)   OR
    		 (dbo.Charge_Price.FK_Workshop = 7) )AND (dbo.Charge_Price.FK_Goods = @Goods_ID) 
    
    Order by 1 desc, 2, 3

    Формирование какой то сметы в стле 1С

    dens, 12 Апреля 2011

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

    +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
    <?php 
    
    
    if ($submit == 'Поcлать') 
    { 
        
        if ($name=='' or $theme=='' or $mail=='' or $message=='' or $pr!='5') 
            $tempu = file_get_contents("php/friend/nosentfr.html"); 
       
        else  
        { 
            $message = str_replace("<","&lt",$message); 
            $message = str_replace(">","&gt",$message); 
            $message = str_replace("\n","<br>",$message); 
            $message = str_replace("\r","",$message); 
        
       
           
     
            $message = ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]", 
                         "<a target=_blank href=\"\\0\">\\0</a>", $message); 
            $name = ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]", 
                         "<a target=_blank href=\"\\0\">\\0</a>", $name); 
          
            $data = date ("d m Y") ." г."; 
            
            $body = file_get_contents("php/friend/friend.html"); 
        
            $user = $mail; 
           
            $newm = $turl; 
            //перемещение данных в собщении 
            $body = str_replace ("%name%",$name,$body); 
            $body = str_replace ("2011",$data,$body); 
            $body = str_replace ("%message%",$message,$body); 
            $body = str_replace ("%mail%",$mail,$body); 
            $body = str_replace ("%newm%",$newm,$body); 
            $body = str_replace ("%theme%",$theme,$body); 
       
            $headers = "Content-Type: text/html; charset=UTF-8\n"; 
         
            @mail ($user,$newm,$body,$headers); 
            я  
            $tempu = file_get_contents("php/friend/sentfr.html"); 
            //перемещение участков строк в файле sentmail.html 
            $tempu  = str_replace("%mail%","$mail",$tempu ); 
            $tempu  = str_replace("%name%","$name",$tempu ); 
            $tempu  = str_replace("%theme%","$theme",$tempu ); 
            $tempu  = str_replace("2011","$data",$tempu ); 
            $tempu  = str_replace("%message%","$message",$tempu ); 
        } 
    } 
    else 
    { 
        $tempu = file_get_contents ("php/friend/formfriend.html"); 
        $tempu = str_replace ("%prurl%",$_SERVER['HTTP_REFERER'],$tempu); 
    } 
    
    ?>

    Отправь страничку другу

    BlackMonolit, 11 Апреля 2011

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

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    for($j = 0, $k = count($cats[$i][TREE_CHILD_ID]); $j < $k; $j++){
    	$child_id = SafeDB($cats[$i][TREE_CHILD_ID][$j]['id'], 11, int);
    	$child_counters = $this->GetCountersRecursive($child_id);
    	$link = 'index.php?name='.$this->moduleName.'&'.$this->id_par_name.'='.$child_id;
    	$sub .= '<a href="'.$link.'">'.$cats[$i][TREE_CHILD_ID][$j]['title'].'</a>'.' ('.$child_counters['files'].'), ';
    }
    $childs .= substr($sub, 0, strlen($sub) - 7).'.';

    Из одной русской CMS. Вывод списка категорий через разделитель. Аффтар не знал про implode.

    Мартин, 10 Апреля 2011

    Комментарии (8)
  7. Си / Говнокод #6290

    +135

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    PIMAGE_FILE_HEADER    pfh;
    PIMAGE_SECTION_HEADER    psh;
    PIMAGE_OPTIONAL_HEADER  poh;
    PVOID aa = LoadLibrary("calc.exe");
    GetHeaders((PCHAR) aa, &pfh, &poh, &psh);
    PPEB aae=GetPEB();
    aae->ImageBaseAddress = aa;
    LPVOID entry = (LPVOID)( (DWORD)aa + poh->AddressOfEntryPoint );
    __asm {
           call dword ptr [entry]
           }

    ссыль: http://www.wasm.ru/forum/viewtopic.php?pid=427180

    ReL, 08 Апреля 2011

    Комментарии (8)
  8. Куча / Говнокод #6276

    +133

    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
    <form method="post" action="/" id="aspnetForm">
    <div class="aspNetHidden">
    <input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" />
    <input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" />
    <input type="hidden" name="__LASTFOCUS" id="__LASTFOCUS" value="" />
    <input type="hidden" name="__VIEWSTATEFIELDCOUNT" id="__VIEWSTATEFIELDCOUNT" value="183" />
    <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="kxnnwlmIYAkFHbi9nYZirEieSOb1PCpVbLq7ZaafTOsnyqQCPor05SCrankcwxJ59OGQL5pKxMjoGYdC1iDYHbQUwovpBi5Wmnrv" />
    <input type="hidden" name="__VIEWSTATE1" id="__VIEWSTATE1" value="2gkhHs6YD5YoT69P5SqBvH32s4E3dorqumTtTS6e6/sHPsYuY1fM5ZRmRyJ7P52W3wU2He5cxWasqcESx1oQoZsX62+DP1sXRgm1" />
    <input type="hidden" name="__VIEWSTATE2" id="__VIEWSTATE2" value="LmN1mDiaKVuJzibGxiEKjNjTIp1vUAxCJ9GnL8boNZRoke8zJkksp5HQ/KCyiwRO+aSSo2T8TR74ef5MrpXD8x2XrUQtDRMJMFm6" />
    <input type="hidden" name="__VIEWSTATE3" id="__VIEWSTATE3" value="zCyNfsdm+wo26AS9icob8KoeZliXKduaJ1wLRpmoOQk9IJU+rXE6LUCkN8oW3I0J54puHJoAEcdEJsWNR/ws5RfM2jNr34yCL1Em" />
    // .....
    <input type="hidden" name="__VIEWSTATE81" id="__VIEWSTATE81" value="jH+G7tRrSDd5e0DhVHjOyYdzDf6jIiR/55dOwtrXe98Rijyh733UORH1hDuVogUIOABeBsLeGYJeQbLEdXopR0OIwNfd4SmZR7f5" />
    <input type="hidden" name="__VIEWSTATE82" id="__VIEWSTATE82" value="WK2adY8hUB5Nb9vaPUB+V/eJCLIRDrH+jwhuZrb54XOmSwRf3P5nUPbkNHiB9ea9lypIEOHsU2I8G8sX0DBl74sdDiQX6zWjIJ+M" />
    <input type="hidden" name="__VIEWSTATE83" id="__VIEWSTATE83" value="GpPM/Zb6Ioz0WJjyRI7uI50Sb9uTX8oEFhWfHQd9bnPrpuDsOeAdGjfufEzxYO3f9Et87gZtlOAockDM/k7i0JlKCZjR24hd0C2m" />
    // ................
    <input type="hidden" name="__VIEWSTATE122" id="__VIEWSTATE122" value="lJSD7BkHANWqp/bUAiChwJV82jQUCDzG66aZ+4B09PT7xXZUvRKdNCFAV8J/QZt8bT2Boy2p5yr9rroZ4eRugSWJdGdBLmOXA9Sy" />
    <input type="hidden" name="__VIEWSTATE123" id="__VIEWSTATE123" value="/yawTrz0pNGOQNni+ZZU+Wvu8fbdcgrwANRvKu4c+bE/azptzKm5NfbgmOyXa6RGqpdXitIHFIz6/zYhF4w24Cd0KMbeDtzG4zNo" />
    <input type="hidden" name="__VIEWSTATE124" id="__VIEWSTATE124" value="1xzw9y8cJ1jprrme/LFSWHKgZ80eHz3ITGKDg/DHGYDf6vR+CA0VdeGrLDhVk9Q39Fe1LAVfCV1AYHNxq6oOWE47bY0KCZPp11BN" />
    <input type="hidden" name="__VIEWSTATE125" id="__VIEWSTATE125" value="jcgYkP58EbDgDclyfBxSs0iwPlRd1ZxZUPTjCV0urxt9urpj57avggBRmKE/4z9J9qUH412nlmV5tp4vHQTE51+W979qvRZyepel" />
    <input type="hidden" name="__VIEWSTATE126" id="__VIEWSTATE126" value="XYSiEtx5EYcBJqm9Z+v+pacfreZ42/xGqURJVqZumkp2tvwiZG/E7DIn53MWLU77McCbwee120zde2bXBLW5ZRjnjFe3UebZQQz6" />
    <input type="hidden" name="__VIEWSTATE127" id="__VIEWSTATE127" value="ZQZYGMqhTPOWeEsOqp9MstY/OGWGyRANk6MksuXNP3U0HyDD13sYvjy/Zhc+57AVlWJMCFCzoH5z+Y1Mr48fLqu/uvGx+Ke8xsAg" />
    // .................................
    <input type="hidden" name="__VIEWSTATE153" id="__VIEWSTATE153" value="O40Bli8NqD11+8k245/GJioauizvQ+/VGkIDaH1AioYZ02EuFq372BjplVr8Fvh/vk6sDn26diZO1R/MKKJvLl9qPgN4P/sSCgvz" />

    Сайт факультета информатики.
    Растет смена.
    http://www.faippi.ru/

    7ion, 07 Апреля 2011

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

    +160

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if($login){
    	$sql="DELETE FROM orders WHERE login='$login' AND id=$id";
    }else{
    	$sql="DELETE FROM orders WHERE id=$id";
    }

    $id конечно же PRIMARY

    Paradoks, 07 Апреля 2011

    Комментарии (8)
  10. Java / Говнокод #6253

    +81

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    while( !par1.end_flag ) 
       {
        if( !par1.end_flag)
          System.out.println("Now waiting par1.end_flag");
       }

    кусок из методички по Java

    ramzes_2, 06 Апреля 2011

    Комментарии (8)
  11. Куча / Говнокод #6239

    +146

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    <p>10.6.                   Участник может проходить этапы flash игр неограниченное количество раз. Результаты по каждой игре сохраняются на персональной странице пользователя и в базе данных Сайта. В рейтинге отражается наилучший результат, достигнутый при прохождении flash игры.</p>
    <p>10.7.                   Участники, которые не ввели уникальный код со скретч-карты, могут играть в Интернет-игру, но не участвуют в присуждении Приза «Стильный MP3 Плеер»</p>
    <p>10.8.                   Призы «Стильный MP3 Плеер» получают участники, набравшие максимальное количество баллов по итогам 2 flash игр.</p>
    
    <p><strong>11.  </strong><strong>Порядок определения Победителей Интернет-игры:</strong></p>
    <p>11.1.                   Первые 25 участников, набравших наибольшее количество баллов по итогам Интернет-игры, получают Приз «Стильный MP3 плеер»;</p>
    <p>11.2.                   В случае одинакового количества баллов, набранных разными участниками, приз достается участнику, чьи результаты были набраны раньше</p>
    <p>11.3.                   Каждый Участник может получить не более одного Приза «Стильный MP3 плеер».</p>

    рылся в портфолио molinos.ru, зашел на их детище http://www.corona-island.ru/ (2010 года выпуска) и увидел вот это в коде. И так весь сайт! Новое веяние - верстка пробелами!!!!!!

    oldfilin, 05 Апреля 2011

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