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

    +147.8

    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
    <?php
    
    // *** Первая версия ***
    
    $numb = $_GET["n"]; // Получаем информацию
    $from = $_GET["f"];
    $to = $_GET["t"];
    
    if (!$numb or !$from or !$to) { // Проверяем есть ли информация, и полна ли она
    echo "<html><head><title>Перевод между сист. исчисл. 2<->36</title></head><body>"; // Выводим справку и ошибку
    echo "<center><u><i>Справка:</i></u> index.php?n=<b>число</b>&f=<b>исходная сист. исчисл.</b>&t=<b>конечная сист. исчисл.</b><hr></center>";
    echo "<center><b>ОШИБКА: Данные не обнаружены или неполные!</b><br>Возможно, что вы тут в первый раз...</center>";
    echo "</body></html>";
    } else {
    echo "<html><head><title>Перевод между сист. исчисл. 2<->36</title></head><body>"; // Выводим справку и результаты
    echo "<center><u><i>Справка:</i></u> index.php?n=<b>число</b>&f=<b>исходная сист. исчисл.</b>&t=<b>конечная сист. исчисл.</b><hr></center>";
    echo "<center>Исходное число: $numb<br>";
    echo "Начальная сист. исчисл.: $from<br>";
    echo "Конечная сист. исчисл.: $to<br>";
    echo "Результат: ";
    echo base_convert("$numb",$from,$to);
    echo "</center></body></html>";
    }
    
    ?>
    
    <?php
    
    // *** Вторая версия - форма ***
    
    echo "<html><head><title>Перевод между С.И.</title></head><body>"; // Выводим форму
    echo "<center><form method='post' action='new_e.php'>Исходное  число:<br><input type = 'text' name='n'><hr>";
    echo "Исходная С.И.:<br><input type='radio' name='f' value='2'>BIN (2)<br>";
    echo "<input type='radio' name='f' value='8'>OCT (8)<br>";
    echo "<input type='radio' name='f' value='10'>DEC (10)<br>";
    echo "<input type='radio' name='f' value='16'>HEX (16)<br>";
    echo "<hr>";
    echo "Конечная С.И.:<br><input type='radio' name='t' value='2'>BIN (2)<br>";
    echo "<input type='radio' name='t' value='8'>OCT (8)<br>";
    echo "<input type='radio' name='t' value='10'>DEC (10)<br>";
    echo "<input type='radio' name='t' value='16'>HEX (16)<br>";
    echo "<hr><input type='submit' value='Выполнить'></form></center>";
    echo "</center></body></html>";
    
    ?>
    
    <?php
    
    // *** Вторая версия - вычисления ***
    
    $numb = $_POST["n"]; // Получаем информацию
    $from = $_POST["f"];
    $to = $_POST["t"];
    
    echo "<html><head><title>Перевод между С.И.</title></head><body>"; // Выводим результаты
    echo "<center>Исх. число: $numb<br>";
    echo "Начальная С.И.: $from<br>";
    echo "Конечная С.И.: $to<br>";
    echo "Результат: ";
    echo base_convert("$numb",$from,$to);
    echo "<hr><center><a href='/new.php'>Назад</a></center>";
    echo "</center></body></html>";
    
    ?>

    Одно из первых моих творений, переводит числа в различные системы исчисления. Представлено две первые версии, одна получала через GET, а другая уже через POST. Первая "ручная" (то есть вбиваем в адрес данные ручками), а другая состояла из двух файлов (формы и собственно обработка и выполнение операции с полученных данных).

    Говнокод заключается в злоупотреблении ECHO (не думаю, что закинуть полученные данные в переменные тоже грех особый). Позже в третьей версии скрипта все было приведено в норму, и два файла были совмещены в один :)

    Мартин, 06 Марта 2010

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

    +72.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
    class ...
    {
      ...
    public:
      ...
      char _Data[57];
    //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
      const volatile byte _Thunk[3];//!!!!Пожалуста, не убирайте!!! Тут портится память!!!!!!!!!!
    //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
      PTChar _Str_;
      ..
    };

    Ну и проект мне достался. Смотря по дате ревизий в системе контроля версий, этим комментам около года, хотя проект активно все это время развивался.
    Жаль нет смайлика, катающегося по полу, держась за живот.

    Говногость, 06 Марта 2010

    Комментарии (19)
  3. JavaScript / Говнокод #2723

    +170.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
    function is_ie8(){
    var ua = navigator.userAgent.toLowerCase();
    var is_opera = ua.indexOf("opera") != -1;
    var is_opera5 = ua.indexOf("opera/5") != -1 || ua.indexOf("opera 5") != -1;
    var is_opera6 = ua.indexOf("opera/6") != -1 || ua.indexOf("opera 6") != -1;
    var is_opera7 = ua.indexOf("opera/7") != -1 || ua.indexOf("opera 7") != -1;
    var is_opera8 = ua.indexOf("opera/8") != -1 || ua.indexOf("opera 8") != -1;
    var is_opera9 = ua.indexOf("opera/9") != -1 || ua.indexOf("opera 9") != -1;
    var is_opera95 = ua.indexOf("opera/9.5") != -1 || ua.indexOf("opera 9.5") != -1;
    var is_opera96 = ua.indexOf("opera/9.6") != -1 || ua.indexOf("opera 9.6") != -1;
    var is_opera95up = is_opera95 || is_opera96;
    
    var is_ff = ua.indexOf("firefox") != -1 && !is_opera;
    var is_gecko = ua.indexOf('gecko') != -1 && !is_opera;
    
    var is_chrome = ua.indexOf('chrome') != -1;
    var is_safari = ua.indexOf('applewebkit') != -1 && !is_chrome;
    
        var is_ie = ua.indexOf("msie") != -1  && !is_opera;
        var is_ie4 = is_ie && ua.indexOf("msie 4") != -1;
        var is_ie5 = is_ie && ua.indexOf("msie 5") != -1;
        var is_ie50 = is_ie && ua.indexOf("msie 5.0") != -1;
        var is_ie55 = is_ie && ua.indexOf("msie 5.5") != -1;
        var is_ie5up = is_ie && !is_ie4;
        var is_ie6 = is_ie && ua.indexOf("msie 6") != -1;
        var is_ie6up = is_ie5up && !is_ie55 && !is_ie5;
        var is_ie7 = is_ie && ua.indexOf("msie 7") != -1;
        var is_ie7up = is_ie6up && !is_ie6;
        var is_ie7down = is_ie7 || is_ie6 || is_ie5 || is_ie4;
    
        var is_ie8 = is_ie && ua.indexOf("msie 8") != -1;
        var is_ie8up = is_ie8 && !is_ie7down;
        if (is_ie && !is_ie8up && !is_ie8) {
            return true;
        }else return false;
    }

    Детектим IE8

    deraider, 06 Марта 2010

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

    −108.4

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    Процедура ПередОткрытием(Отказ, СтандартнаяОбработка)
    	
    	ОтраженоВОперУчете           = Истина;
    	ОтражатьВБухгалтерскомУчете  = Истина;
    	ОтражатьВНалоговомУчете      = Истина;
    	
    	Если НЕ ДокументОснование = Неопределено Тогда
    		ЭлементыФормы.Проект.Значение = ДокументОснование.Проект;
    	КонецЕсли;	
    		
    КонецПроцедуры // ПередОткрытием()

    Автор хотел что бы все документы обязательно проводились по БУ УУ и НУ... И хотел что бы при вводе на основании заполнялось поле проект. Ну почти получилось:))))

    acckiy_koder, 05 Марта 2010

    Комментарии (31)
  5. Си / Говнокод #2721

    +101.8

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    inline int _txReturn1 () { return 1; }
    
    //бла-бла-бла
    while (_txReturn1 ()) 
    {
    //бла-бла-бла
    }
    
    //бла-бла-бла

    Это либка TXlib и по ней учат детей

    x0m9k, 05 Марта 2010

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

    +168.4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    if (count($_SESSION["cart"]["discs"])==0)
    {
    $poryadochek="yes";
    } else {
    $poryadochek="no";
    }

    Verbose programming.

    starfall, 05 Марта 2010

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

    +171.7

    1. 1
    2. 2
    3. 3
    4. 4
    while (true) {
    	load_config();
    	break;
    }

    starfall, 04 Марта 2010

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

    −860.1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    s :=
                Replace(
                  Replace(
                    Replace(s,' ')
                  ,',',ltrim(to_char(0,'D')))
                ,'.',ltrim(to_char(0,'D')));

    Кодер думает, что так будет понятнее, что на что заменяется.
    По-моему намного читабельнее было бы разбить это на 3 отдельных вызова Replace

    gorsash, 04 Марта 2010

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

    +157.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
    while (count(array_diff(array_keys($rows), $roots)) > 0) 
    		{
    			 $theLeaves = $this->_getLeaves($rows);
    			 foreach ($theLeaves as $leafId) 
    			 {
    			 	if(isset($rows[$rows[$leafId]['parent_id']]['Menu']['data']) and 
                                               !is_array($rows[$rows[$leafId]['parent_id']]['Menu']['data']))
    			 		if(!is_array($rows[$rows[$leafId]['parent_id']]['Menu']['data']))
                                                   unset($rows[$rows[$leafId]['parent_id']]['Menu']['data']);
                                            
    				  if(isset($rows[$rows[$leafId]['parent_id']]['data']) and 
                                            !is_array($rows[$rows[$leafId]['parent_id']]['data']))
    			 	     if(!is_array($rows[$rows[$leafId]['parent_id']]['data']))
                                                unset($rows[$rows[$leafId]['parent_id']]['data']);
                                         
    				  $rows[$rows[$leafId]['parent_id']]['data'][] = $rows[$leafId];
    				  unset($rows[$leafId]);
    			 }
    		}

    пришел проектик на доработку. сижу, пытаюсь разобраться

    gesper, 04 Марта 2010

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

    +144.9

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    // Руководство по созданию плагинов к асечке qutIM
    QWidget *simplePlugin::settingsWidget()
    {
        QWidget* form = new QWidget;
        return form;
    }

    Программирование на Qt, Java-style.
    Горбатый дворник, где же ты? :)

    Пруфлинк: http://www.qutim.org/forum/viewtopic.php?f=55&t=720

    Orfest, 04 Марта 2010

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