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

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

    +160

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    <?php
    $vlid = mysql_fetch_array( mysql_query("select * from vt_par where pid = $nov[id] && prmid = 17") ); $param17 = $vlid[val_int]; $param17print = number_format($param17,0,","," "); // Стоимость [17]
    $vlid = mysql_fetch_array( mysql_query("select * from vt_par where pid = $nov[id] && prmid = 131") ); $param131 = $vlid[val_char]; // Артикул [131]
    $vlid = mysql_fetch_array( mysql_query("select * from vt_par where pid = $nov[id] && prmid = 28") ); $param28 = $vlid[val_int]; // Код [28]
    $vlid = mysql_fetch_array( mysql_query("select * from vt_par where pid = $nov[id] && prmid = 29") ); $param29 = $vlid[val_int]; // Новинка [29]
    $vlid = mysql_fetch_array( mysql_query("select * from vt_par where pid = $nov[id] && prmid = 130") ); $param130 = $vlid[val_int]; // Акция или распродажа [130]
    $vlid = mysql_fetch_array( mysql_query("select * from vt_par where pid = $nov[id] && prmid = 76") ); $param76 = $vlid[val_int]; // Бесплатная доставка [76]
    $vlid = mysql_fetch_array( mysql_query("select * from vt_par where pid = $nov[id] && prmid = 232") ); $param232 = $vlid[val_int]; // Топ продаж [232]
    $vlid = mysql_fetch_array( mysql_query("select * from vt_par where pid = $nov[id] && prmid = 44") ); $param44 = $vlid[val_char]; // Тип товара для Яндекс.Маркета [44]
    ?>

    Именно так нужно именовать переменные. Видимо, чтоб враги не догадались. Я уж не говорю про ужас работы с БД. Всё это безобразие выполняется на одну страницу раз по 50-70.

    TiGR, 01 Апреля 2011

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

    −100

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    //ВИНМАНИЕ Деление на 0
    Если СтрокаЗаказа.КоличествоДнейНаличияНаСкладеЗаПериод = 0 Тогда
    	СтрокаЗаказа.КоличествоСделокВДень = 0;
    Иначе
    	СтрокаЗаказа.КоличествоСделокВДень = СтрокаЗаказа.КоличествоСделокЗаПериод
    		/ ?( СтрокаЗаказа.КоличествоДнейНаличияНаСкладеЗаПериод = 0, 1, СтрокаЗаказа.КоличествоДнейНаличияНаСкладеЗаПериод );
    КонецЕсли;

    по условию 1с не догнала, что там 0...

    drhihi, 31 Марта 2011

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

    +158

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    std::string get(const std::string& name) {
          NamedPropertyMap::iterator it = properties.find(name);
          if (it == properties.end())
            return false;
    
          std::string ret;
          it->second->Get(ret);
          return ret;
        }

    return false; компилится на ура в VS2008

    Aleskey, 30 Марта 2011

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

    +164

    1. 1
    $('#menu_block').each…

    Дальше не смотрел.

    stuffort, 30 Марта 2011

    Комментарии (7)
  6. Python / Говнокод #6117

    −97

    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
    if row[0].find('lk_s_du') > -1 or row[0].find('lk_s_su') > -1:
        price = ''
        if row[6] == 'incoming_external':
            if tariff['ie_price_second'] == 0:
                price = row[5] * tariff['ie_price_first'] / 102400
            elif ie_global > tariff['ie_price_switch']:
                price = row[5] * tariff['ie_price_second'] / 102400
            else:
                price = overhead(tariff['ie_price_switch']-ie_global,tariff['ie_price_switch'])*tariff['ie_price_first'] / 102400 + hev((row[5]+ie_global-tariff['ie_price_switch']))*tariff['ie_price_second'] / 102400
            ie_global += row[5]
            unit = 'kb'
            if tariff['price_per_unit'] == 1:
                price = price /1024
                unit = 'mb'
            if tariff['price_per_unit'] == 2:
                price = price /1024/1024
                unit = 'gb'
            if tariff['price_per_unit'] == 3:
                price = price /1024/1024/1024
                unit = 'tb'
        if row[6] == 'internal':
            if tariff['il_price_second'] == 0:
                price = row[5] * tariff['il_price_first'] / 102400
            elif il_global > tariff['il_price_switch']:
                price = row[5] * tariff['il_price_second'] / 102400
            else:
                price = overhead(tariff['il_price_switch']-il_global,tariff['il_price_switch'])*tariff['il_price_first'] / 102400 + hev((row[5]+il_global-tariff['il_price_switch']))*tariff['il_price_second'] / 102400
            il_global += row[5]
            unit = 'kb'
            if tariff['price_per_unit'] == 1:
                price = price /1024
                unit = 'mb'
            if tariff['price_per_unit'] == 2:
                price = price /1024/1024
                unit = 'gb'
            if tariff['price_per_unit'] == 3:
                price = price /1024/1024/1024
                unit = 'tb'
        if row[6] == 'outgoing_any':
            if tariff['oe_price_second'] == 0:
                price = row[5] * tariff['oe_price_first'] / 102400
            elif oe_global > tariff['oe_price_switch']:
                price = row[5] * tariff['oe_price_second'] / 102400
            else:
                price = overhead(tariff['oe_price_switch']-oe_global,tariff['oe_price_switch'])*tariff['oe_price_first'] / 102400 + hev((row[5]+oe_global-tariff['oe_price_switch']))*tariff['oe_price_second'] / 102400
            oe_global += row[5]
            unit = 'kb'
            if tariff['price_per_unit'] == 1:
                price = price /1024
                unit = 'mb'
            if tariff['price_per_unit'] == 2:
                price = price /1024/1024
                unit = 'gb'
            if tariff['price_per_unit'] == 3:
                price = price /1024/1024/1024
                unit = 'tb'
        price = str(price).replace('.',',')

    Черная магия непосредственно тарификации интернет-трафика.

    spaceoflabview, 29 Марта 2011

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

    +159

    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
    <?php
    $z=0;
    $ti=0;
    $ti2=0;
    
    $res=array();
    $txt="";
    $res=array();
    if($argc<2)exit(0);
    $fn=$argv[1];
    $pt='/(^|\b|\s)((\w|[а-я]|\d)+(?:\.|\,)?)(\b|\.|,|-)/i';
    if(isset($fn)){
    $fc=file($fn);
    foreach($fc as $nl=>$str){
    preg_match_all($pt,$str,$res,PREG_PATTERN_ORDER);
    foreach($res[0] as $key=>$per){
     # $per=trim($per);
    $sz=iconv_strlen($per);
    $tz=iconv_strlen($per);
    echo "Per $per key $key sz $sz\n";
    
    while($sz>=2){ 
     $eb = substr($per,0,$sz-1);
    echo "eb $eb\n";
    $res=system("cat -b dict.txt | grep ' ".$eb." ' | head -n1 | gawk '{ print $1 }'");
    #echo "$res\n";
    if($res!=""){
    echo "res $res\n";
    $oc=substr($per,$sz-1,$tz); 
    $fd=fopen("$argv[1].txt","a");
    if($fd<0){echo "fopen";exit(0);};
      fseek($fd,SEEK_END,0);
    fwrite($fd,"$res$oc ");
    
    fclose($fd);
    $sz=1;
    sleep(3);
    };
      $sz--;
    };
    if($sz==1){
    
    $fd=fopen("$argv[1].txt","a");
    if($fd<0){echo "fopen";exit(0);};
      fseek($fd,SEEK_END,0);
      fwrite($fd,"$per ");
      fclose($fd);
    };
    
    };
    };
    $str="";
    $res="";
    }
    ?>

    Замена слова кодом из словаря, по номеру слова в словаре.

    AliceGoth, 25 Марта 2011

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

    +166

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    <select name="input_name[14]">
      <option value="Интернет"<?if(htmlspecialchars($_POST['input_name'][15]) == "Интернет") echo ' SELECTED';?>>Интернет
     <option value="Авто / Мото"<?if(htmlspecialchars($_POST['input_name'][15]) == "Авто / Мото") echo ' SELECTED';?>>Авто / Мото
      <option value="Бизнес и производство"<?if(htmlspecialchars($_POST['input_name'][15]) == "Бизнес и производство") echo ' SELECTED';?>>Бизнес и производство
      <option value=""<?if(htmlspecialchars($_POST['input_name'][15]) == "") echo ' SELECTED';?>>Оборудование
      <option value=""<?if(htmlspecialchars($_POST['input_name'][15]) == "") echo ' SELECTED';?>>Бытовая техника
      <option value=""<?if(htmlspecialchars($_POST['input_name'][15]) == "") echo ' SELECTED';?>>Все для животных
      <option value=""<?if(htmlspecialchars($_POST['input_name'][15]) == "") echo ' SELECTED';?>>Здоровье и красота
      <option value=""<?if(htmlspecialchars($_POST['input_name'][15]) == "") echo ' SELECTED';?>>Медицина
      <option value=""<?if(htmlspecialchars($_POST['input_name'][15]) == "") echo ' SELECTED';?>>Знакомства
      <option value=""<?if(htmlspecialchars($_POST['input_name'][15]) == "") echo ' SELECTED';?>>Компьютеры и комплектующие
      </select>

    без комментариев
    http://javascript.ru/forum/dom-window/15999-mnogourovnevyjj-select.html

    vulkan, 22 Марта 2011

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

    +165

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    #define		DEFAULT_TIMEOUT				30000
    ................................................
    class CSettings //: public QSettings 
    {
    ................................................
      static QVariant             svalue( QString qs, QVariant defValue );
    ................................................
    };
    ................................................
    QString qs = QString("%1").arg( DEFAULT_TIMEOUT );
    m_nTimeout = CSettings::svalue("connection/Timeout", qs.toAscii().data()).toString().toInt();

    panter_dsd, 22 Марта 2011

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

    +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
    <?
            if ($GET['cat'] == 'read') $y=date("Y");
                    else $y=$GET['cat'] ;
                    
            if ($GET['alb'] == 'read') $m=date("m");
                    else $m=$GET['alb'] ;
            
            if (!isset($y) OR $y < 1970 OR $y > 2037) $y=date("Y");
            if (!isset($m) OR $m < 1 OR $m > 12) $m=date("m");
     
            include_once './libs/mysql.php';
            
            $res='';
            $rows='';
            $date_array = array(); 
            $arraycount=1;          
    
                    
            $res = mysqlQuery("SELECT * 
                                                    FROM `". BG_DBPREFIX ."calendar`
                                                    WHERE YEAR(date)=".$y." AND MONTH(date)=".$m."
                                                    ORDER BY date ASC"
                                                    );
        if(mysql_num_rows($res) > 0)         // Если записи есть, вытаскиваем по одной в цикле 
                    {                                       
                    while($rows = htmlChars(mysql_fetch_assoc($res))) // попутно обрабатывая функцией htmlChars() 
            {
                            $date_array[$arraycount]['id']=$rows['id'];
                            $date_array[$arraycount]['date']=$rows['date'];
                            $date_array[$arraycount]['name']=$rows['name'];
                            $date_array[$arraycount]['status']=$rows['status'];
                            $arraycount++;
                    };
                    }
     
                    $prev_y=date('Y',mktime (0,0,0,$m-1,1,$y));
                    $prev_m=date('m',mktime (0,0,0,$m-1,1,$y));
                    $next_y=date('Y',mktime (0,0,0,$m+1,1,$y));
                    $next_m=date('m',mktime (0,0,0,$m+1,1,$y));
     
    echo "<a href=\"".href('cat='.$prev_y,'alb='.$prev_m)."\">Prev</a>";
    echo "<a href=\"".href('cat='.$next_y,'alb='.$next_m)."\">Next</a>";

    qbasic, 21 Марта 2011

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

    +159

    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
    <? 
    // Страница авторизации 
      
    # Функция для генерации случайной строки 
    function generateCode($length=6) { 
        $chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHI JKLMNOPRQSTUVWXYZ0123456789"; 
        $code = ""; 
        $clen = strlen($chars) - 1;   
        while (strlen($code) < $length) { 
                $code .= $chars[mt_rand(0,$clen)];   
        } 
        return $code; 
    } 
    
    # Соединямся с БД 
    mysql_connect("localhost", "loper", "l1i2z3a4"); 
    mysql_select_db("lingerie"); 
     
    if(isset($_POST['submit'])) 
    { 
        # Вытаскиваем из БД запись, у которой логин равняеться введенному 
        $query = mysql_query("SELECT user_id, user_password FROM users WHERE user_login='".mysql_real_escape_string($_POST['login'])."' LIMIT 1"); 
        $data = mysql_fetch_assoc($query); 
         
        # Соавниваем пароли 
        if($data['user_password'] === md5(md5($_POST['password']))) 
        { 
            # Генерируем случайное число и шифруем его 
            $hash = md5(generateCode(10)); 
                 
            if(!@$_POST['not_attach_ip']) 
            { 
                # Если пользователя выбрал привязку к IP 
                # Переводим IP в строку 
                $insip = ", user_ip=INET_ATON('".$_SERVER['REMOTE_ADDR']."')"; 
            } 
             
            # Записываем в БД новый хеш авторизации и IP 
            mysql_query("UPDATE users SET user_hash='".$hash."' ".$insip." WHERE user_id='".$data['user_id']."'"); 
             
            # Ставим куки 
            setcookie("id", $data['user_id'], time()+60*60*24*30); 
            setcookie("hash", $hash, time()+60*60*24*30); 
             
            # Переадресовываем браузер на страницу проверки нашего скрипта 
            header("Location: check.php"); exit(); 
        } 
        else 
        { 
            print "Вы ввели неправильный логин/пароль"; 
        } 
    }

    qbasic, 19 Марта 2011

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