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

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

    +153.2

    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
    94. 94
    <?php
    // ---SpyLib---
    function connectToSpy(){
    global $serverName, $userName, $password, $dbName;
    $dbConn = MYSQL_CONNECT($serverName, $userName, $password) OR DIE("Не могу создать соединение ");
    $select=mysql_select_db("$dbName", $dbConn) or die("Не могу выбрать базу данных"); 
    return $dbConn;
    }
    
    function autentID($login, $psw){
    global $dbConn; 
    $query = "SELECT clientsID FROM clients WHERE login='$login' AND psw_md5='$psw'";
    $clientsID = qToTableText($query);
    $_SESSION['lgn']=$login;// регистрируем переменную lgn
    $_SESSION['pswd']=$psw; // регистрируем переменную pswd
    return $clientsID;
    }  
    
    /* выводит инфу из таблицы */				
    function qToTableText($query){
    global $dbConn;
    $output .= "";
    $result = MYSQL_QUERY($query, $dbConn);
    //получить данные строк и сохранить в ассоциативный массив
    while ($row = mysql_fetch_assoc($result)){
    			//просмотреть каждое поле 
    	foreach ($row as $col=>$val){
    		$output .=  "$val";
    	} // завершение цикла foreach
    } // завершение цикла while 
    return $output;
    }
    
    /* по заданному названию таблицы генерирует таблицу HTML, содержащую кнопки добавления, удаления и редактирования */
    function tToEdit($tableName){
    global $dbConn;
    $output="";
    $query="SELECT * FROM `$tableName`";
    $result=mysql_query($query, $dbConn);
    while ($row = mysql_fetch_assoc($result)){
    	$fieldNum=0;
    	foreach($row as $col=>$val){
    		if ($fieldNum=='1'){
    			$field=$col;
    		}//if
    		$fieldNum++;
    	}//foreach
    }//while
    //$query="SELECT * FROM `$tableName` ORDER BY '$field'";
    $query="SELECT * FROM `$tableName` ORDER BY name ASC";
    $result=mysql_query($query, $dbConn);
    $output .="<tr  class='title'>\n";
    $th=0;// считаем количество столбцов
    while ($field = mysql_fetch_field($result)){
    	// если столбец->пирвичный ключ то он уберается
    	if (!$field->primary_key==1){
    		$a=array(
    		"text"=>"Информация","name"=>"Название","cena"=>"Стоимость, руб","bl1"=>"Блюдо 1","bl1_ves"=>"Вес",
    		"bl1_text"=>"Описание",	"bl2"=>"Блюдо 2","bl2_ves"=>"Вес","bl2_text"=>"Описание","bl3"=>"Блюдо 3",
    		"bl3_ves"=>"Вес","bl3_text"=>"Описание","bl4"=>"Блюдо 4","bl4_ves"=>"Вес","bl4_text"=>"Описание",
    		"v_menu"=>"в меню","v_mon"=>"в пон.","v_twu"=>"во вт.","v_wen"=>"в ср.","v_thu"=>"в чет.",
    		"v_fri"=>"в пят.","v_sa"=>"в суб.","date"=>"Дата",);
    		$rename=$a["$field->name"];
    		$output .="<th>$rename</th>\n";
    	}
    	$th++;
    }// заверщение цикла while
    $page="admin";//при запуске с этой страницы мы можем редоктировать БД
    if ($_REQUEST['page']=="$page"){
    	$th=$th+2;
    	// добавить пустой столбец для добавления, редактирования и удаления
    	$output .="<th class=\"frametitle\"></th><th class=\"frametitle\"></th>\n";
    }
    $output .="</tr>\n\n";
    // получить название индексного поля (полагая, что оно является первым)
    $keyField = mysql_fetch_field($result, 0);
    $keyName = $keyField->name;
    
    // настроить форму для вставки, посылающую название таблицы
    if ($_REQUEST['page']=="$page"){
    	$keyVal = $row["$keyName"];
    	$output .=<<<HERE
     <tr><form action = "admin.php?option=addRecord"  method="post">
    	<td class="frametitle" colspan = "$th">
    	<input type = "hidden"	name = "tableName"	value = "$tableName">
    	<input name="add" type="image" src="../img/add.gif" alt="Кнопка добавление записи в таблицу!!!"></td>
    	</form></tr>
    HERE;
    }
    $output .="</table>";
    $output="$output_top"."$output";
    return $output;
    }
    ?>

    xXx_totalwar, 11 Января 2010

    Комментарии (21)
  3. C# / Говнокод #2383

    +92.8

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    name[0].InnerText = Regex.Replace(name[0].InnerText, @"<[^>]+>", string.Empty);
    name[0].InnerText = Regex.Replace(name[0].InnerText, "a*[a-z]*A*[A-Z]*", string.Empty);
    name[0].InnerText = Regex.Replace(name[0].InnerText, ",", string.Empty);
    name[0].InnerText = Regex.Replace(name[0].InnerText, "\\.", string.Empty);
    name[0].InnerText = Regex.Replace(name[0].InnerText, ";", string.Empty);
    name[0].InnerText = Regex.Replace(name[0].InnerText, "&", string.Empty);
    name[0].InnerText = Regex.Replace(name[0].InnerText, "\\?", string.Empty); 
    name[0].InnerText = Regex.Replace(name[0].InnerText, "\n", string.Empty);
    name[0].InnerText = Regex.Replace(name[0].InnerText, " ", string.Empty);

    такие дела. кстати, как улучшить? :)) Нужно, чтобы обрезалось все, кроме чисел (положительных и отрицательных) Я какбе начинающий

    Yurik, 07 Января 2010

    Комментарии (21)
  4. C# / Говнокод #1969

    +132.9

    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
    //  Этот метод проверяет, создано ли окошло лога, если не создано, то создает его
            public void CheckLogWnd()
            {
                try
                {
                    if (logWnd.IsAccessible)
                    {
                    }
                }
                catch
                {
                    logWnd = new LogWnd();
                }
            }

    Не помню как сделать это правильно :(

    nolka4, 13 Октября 2009

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

    +153.3

    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 catGetCategoryById($categoryID)
    {
    	$categoryID = (int)$categoryID;
    	$q = db_query("select categoryID, name, parent, products_count, description, picture, ".
    		" products_count_admin, sort_order, viewed_times".
    		", allow_products_comparison".
    		", allow_products_search".
    		", show_subcategories_products, meta_description, meta_keywords ".
    		"  from ".CATEGORIES_TABLE.
    		" where categoryID=$categoryID");
    	return db_fetch_row($q);
    }

    снова ShopScript...
    пересчитал ради интереса количество полей в таблице - как и в запросе 14. вот хотел я добавить еще одно поле. хорошо, что посмотрел, как берутся данные

    gorky, 03 Октября 2009

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

    +156

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    $sql = "SELECT MAX(user_id) AS total
    				FROM " . USERS_TABLE;
    			if ( !($result = $db->sql_query($sql)) )
    			{
    				message_die(GENERAL_ERROR, 'Could not obtain next user_id information', '', __LINE__, __FILE__, $sql);
    			}
    
    			if ( !($row = $db->sql_fetchrow($result)) )
    			{
    				message_die(GENERAL_ERROR, 'Could not obtain next user_id information', '', __LINE__, __FILE__, $sql);
    			}
    			$user_id = $row['total'] + 1;

    Найдено в phpBB-wap. Перед регистрацией пользователя. $user_id - id регистрирующегося юзера. Похоже, автор не знает про auto_increment

    123qweawdsf12fasfa, 27 Августа 2009

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

    +166.4

    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
    <?
    $query="SELECT * FROM Communicators WHERE phoneID=$phoneID";
    $dba->query($query);
    list($phoneID, $brandID, $phoneModel, $phoneDate, $phonePriceRetail, $phonePriceWS,$phonePriceWS1, $phoneDescrShort, $phoneDescrFull, $phonePicShort, $phonePicFull,
    $phonePriceWSComment, $groupDefaultprice1, $groupDefaultprice2, $groupGroup2price1, $groupGroup2price2, $grouptempprice1, $grouptempprice2, $groupGorodprice1, $groupGorodprice2, $groupClientsprice1, $groupClientsprice2,
    $standards, $height, $width, $thickness, $weight, $batteryType, $batteryMAH, $standbyTime, $talkTime, $phoneBookSize, $video, $processor, $calendar, $wap, $OS, $GPRS, $EDGE, $java, $FMradio, $memcard, $bluetooth, $modem, $irda, $EMS, $MMS, $USB, $dictaphone, $camera, $colorDisplay, $twoDisplays, $outlookSynchro, $otherDescription, $games, $ringFileFormat, $innerMemory, $mp3player, $corpus, $WiFi, $videoCall, $GPS, $xtraDescr, $id_article)=$dba->get_row();
    ?>
    <h2>Описание <?=$brandName?> <?=$phoneModel?></h2>
    <b>Основные характеристики</b><br>
    <?if( $standards != "" ){?>Стандарт: <?=$standards?><br><?}?>
    <?if( $corpus != "" ){?>Тип корпуса: <?=$corpus?><br><?}?>
    Размеры, мм (Ш×В×Г): <?=$width?>×<?=$height?>×<?=$thickness?><br>
    <?if( $weight != "" ){?>Вес: <?=$weight?> г<br><?}?>
    Аккумулятор: <?if( $batteryType != "" ){?><?=$batteryType?>, <?}?><?if( $batteryMAH != "" ){?><?=$batteryMAH?> мА·ч<br><?}?>
    <?if( $processor != "" ){?>Процессор: <?=$processor?><br><?}?>
    <?if( ($innerMemory != "0") && ($innerMemory != 0) && ($innerMemory != "") ){?>Память RAM/ROM: <?=$innerMemory?><br><?}?>
    <?if( $memcard != "" ){?>Слоты расширения: <?=str_replace("+","есть",str_replace("-","нет",$memcard))?><br><?}?>
    <?if( $OS != "" ){?>Операционная система: <?=$OS?><br><?}?>
    <?if( $calendar != "" ){?>Органайзер: <?=str_replace("+","есть",str_replace("-","нет",$calendar))?><br><?}?>
    <br>
    <b>Связь</b><br>
    <?if( $USB != "" ){?>USB: <?=str_replace("+","есть",str_replace("-","нет",$USB))?><br><?}?>
    <?if( $irda != "" ){?>Инфракрасный порт: <?=str_replace("+","есть",str_replace("-","нет",$irda))?><br><?}?>
    <?if( $GPRS != "" ){?>GPRS: <?=str_replace("+","есть",str_replace("-","нет",$GPRS))?><br><?}?>
    <?if( $EDGE != "" ){?>EDGE: <?=str_replace("+","есть",str_replace("-","нет",$EDGE))?><br><?}?>
    <?if( $bluetooth != "" ){?>Bluetooth: <?=str_replace("+","есть",str_replace("-","нет",$bluetooth))?><br><?}?>
    <?if( $WiFi != "" ){?>Wi-Fi: <?=str_replace("+","есть",str_replace("-","нет",$WiFi))?><br><?}?>
    <?if( $GPS != "" ){?>GPS: <?=str_replace("+","есть",str_replace("-","нет",$GPS))?><br><?}?>
    <br>
    <b>Экран</b><br>
    <?if( $colorDisplay != "" ){?>Экран: <?=str_replace("+","есть",str_replace("-","нет",$colorDisplay))?><br><?}?>
    <?if( $twoDisplays != "" ){?>Сенсорный дисплей: <?=str_replace("+","есть",str_replace("-","нет",$twoDisplays))?><br><?}?>
    <br>
    <b>Мультимедийные возможности</b><br>
    <?if( $mp3player != "" ){?>MP3-плеер: <?=str_replace("+","есть",str_replace("-","нет",$mp3player))?><br><?}?>
    <?if( $ringFileFormat != "" ){?>Аудио форматы: <?=$ringFileFormat?><br><?}?>
    <?if( $FMradio != "" ){?>FM радио: <?=str_replace("+","есть",str_replace("-","нет",$FMradio))?><br><?}?>
    <?if( $dictaphone != "" ){?>Диктофон: <?=str_replace("+","есть",str_replace("-","нет",$dictaphone))?><br><?}?>
    <?if( $camera != "" ){?>Камера: <?=str_replace("+","есть",str_replace("-","нет",$camera))?><br><?}?>
    <?if( $video != "" ){?>Съемка видео: <?=str_replace("+","есть",str_replace("-","нет",$video))?><br><?}?>
    <?if( $videoCall != "" ){?>Видеозвонок: <?=str_replace("+","есть",str_replace("-","нет",$videoCall))?><br><?}?>
    <?if( $games != "" ){?>Игры: <?=str_replace("+","есть",str_replace("-","нет",$games))?><br><?}?>
    <?if( $otherDescription != "" ){?>
    <br>
    <b>Прочее</b><br>
    <?=nl2br($otherDescription)?>
    <?}?>

    Разгребаю это говно... Тот кто так пишет - недостоин жить :(

    Yozheg, 17 Августа 2009

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

    +155

    1. 1
    return i == -1 ? true : false;

    Ну это, если true, так true, а иначе false, чисто чтобы всем было понятно...

    victorsmirnov, 16 Августа 2009

    Комментарии (21)
  9. Java / Говнокод #1351

    +145.9

    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
    double dotProduct(double vec[]) {
            int k, m, v;
            double rtn;
    
            rtn = 0.0;
            k = vec.length / 4;
            m = vec.length % 4;
    
            v = 0;
            while ((k--) > 0) {
                rtn += vec[v];
                rtn += vec[v + 1];
                rtn += vec[v + 2];
                rtn += vec[v + 3];
                v += 4;
            }
    
            while ((m--) > 0) {
                rtn += vec[v];
                v++;
            }
    
            return rtn;}

    разбираю ocr-апплетик.. нашел вот такой интересный метод.. для лучшего восприятия говнокода, убрал одну переменную(было типа "+=vec1[v]*vec2[v]")

    guest, 09 Июля 2009

    Комментарии (21)
  10. Си / Говнокод #1275

    +141

    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
    typedef INTEGER int
    typedef BOOLEAN bool
    #define TRUE true
    #define FALSE false
    #define BEGIN {
    #define END }
    #define WHILE(a) while(a)
    #define REPEAT do{
    #define UNTIL(a) }while(!(a))
    #define FOR for(
    #define TO(a,b) ,a<b
    #define DO(a) ,a++)
    #define VAR
    #define IF if
    #define THEN
    ...
    VAR
    INTEGER I;
    BEGIN
    I=2;
    REPEAT
    ...
    I=I+1;
    UNTIL I<5;
    ...
    END
    ...

    Что этот парень пытался сделать с Си? O_o

    guest, 28 Июня 2009

    Комментарии (21)
  11. C++ / Говнокод #227

    −74.2

    1. 1
    2. 2
    3. 3
    4. 4
    CString temp;
    temp.Preallocate(5000);
    GetName(temp.GetBuffer());
    name_.Format(L"%s", temp);

    На самом деле после GetBuffer нужен ReleaseBuffer и Preallocate резервирует место, но не устанавливает длину.
    Эти ошибки приводят к тому что использование name_ в GetName не работает и name_ = temp тоже не работает.
    Хитрый "индокодер" выкрутился через Format.

    guest, 19 Декабря 2008

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