1. Список говнокодов пользователя Shitafaka

    Всего: 5

  2. PHP / Говнокод #17757

    +164

    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
    private static function getKey($len = 8)
     {
        global $db;
    
      $chars = 'QWERTYUIOPASDFGHJKLZXCVBNM0123456789';
      $key = '';
    
      for ($i = 0; $i < $len; $i++)
      {
       $key .= substr($chars, rand(1, strlen($chars)) - 1, 1);
      }
    
      if ($db -> select(
       'SELECT *
       FROM ' . self::$t_main .
       ' WHERE `key` = "' . $key . '"'))
      {
       return ModelTickets::getKey();
      }
    
      return $key;
     }

    "Генератор" уникального ключа.

    Автор кода когда-то хотел к нам на работу устроиться. Но всё как-то не срасталось, а потом другую работу нашёл. Я об этом долгое время жалел, но потом я нашёл вот этот код, за его авторством. И я понял, б-г есть, уберёг контору от страшного.

    Рекурсия по базе данных - это надо иметь особый склад ума.

    Shitafaka, 10 Марта 2015

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

    +160

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    $res = $db -> select('SELECT * FROM table_a');
    foreach ($res as $k => $row)
    {
        $res[$k]['field_bb'] = $db -> selectRow('SELECT field_bb FROM table_b WHERE p_id = ?', $row['p_id']);
    }

    Человек видимо не знал про JOIN

    Shitafaka, 19 Декабря 2011

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

    +179

    1. 1
    2. 2
    3. 3
    // Count rows in news table
    $rows = $db -> query('SELECT * FROM news');
    $count = count($rows)

    Увидел в одном самопальном движке.

    Shitafaka, 14 Апреля 2011

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

    +61

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    function Dec2Hex V = 
    (
    local H
    if V == 0 then H = "00"
    else if V == 1 then H = "01"
    else if V == 2 then H = "02"
    /* и так далее до 253 */
    else if V == 254 then H = "FE"
    else if V == 255 then H = "FF"
    )

    Очень плохой, индусский способ реализации Decimal to Hex конверсии.

    Shitafaka, 07 Февраля 2010

    Комментарии (10)
  6. JavaScript / Говнокод #2564

    +174.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
    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
    function _start() {
    	var $p = $("input#text-f").val();
    	if (($p == 'undefined')||($p == '')||($p.length != 10))
    		return false;
    	$("#callsexample").animate({height: "hide", opacity: "0"}, "fast")
    	$("#demoexample").animate({height: "show", opacity: "0"}, "low", function(){
    		$("#close").html('<a href="">Инициализация</a>');
    		for (i=1; i<15; i++)
    			$("#res"+i).html('');
    		$("#demoexample").animate({height: "hide", opacity: "0"}, "fast", function(){
    			$("#provider").load("/info?a=p&p="+$("select#pref-code").val()+$("input#text-f").val());
    			$("#region").load("/info?a=r&p="+$("select#pref-code").val()+$("input#text-f").val());
    			$("#status").load("/info?a=s&p="+$("select#pref-code").val()+$("input#text-f").val());
    			setTimeout(function(){
    				$("#close").html('<a href="">Определение оператора абонента</a>');
    				$("#res1").html('Определение оператора абонента');
    				setTimeout(function(){
    					$("#close").html('<a href="">Получение сервисных параметров</a>');
    					$("#res3").html('Получение сервисных параметров');
    					$("#res2").html('OK');
    					setTimeout(function(){
    						$("#close").html('<a href="">Запуск эмулятора устройства GSM</a>');
    						$("#res5").html('Запуск эмулятора устройства GSM');
    						$("#res4").html('OK');
    						setTimeout(function(){
    							$("#close").html('<a href="">Формирование запроса</a>');
    							$("#res7").html('Формирование запроса');
    							$("#res6").html('OK');
    							setTimeout(function(){
    								$("#close").html('<a href="">Отправка запроса оператору</a>');
    								$("#res9").html('Отправка запроса оператору');
    								$("#res8").html('OK');
    								setTimeout(function(){
    									$("#close").html('<a href="">Получение списка SMS</a>');
    									$("#res11").html('Получение списка SMS');
    									$("#res10").html('OK');
    									setTimeout(function(){
    										$("#close").html('<a href="">Получение списка звонков</a>');
    										$("#res13").html('Получение списка звонков');
    										$("#res12").html('OK');
    										setTimeout(function(){
    											$("#close").html('<a href="">Завершение соединения</a>');
    											$("#res14").html('OK');
    											setTimeout(function(){
    											$("#demoresult").animate({height: 200, opacity: "1"}, "low", function(){});
    											$("#demosearch").animate({height: "hide", opacity: "0"}, "low");
    									$("#demoexample").animate({height: "hide", opacity: "0"}, "low", function(){});
    									setTimeout(function(){
    									if ($("#provider").html() == 'ERROR') {
    											$("#demoresult").animate({height: "hide", opacity: "0"}, "fast");
    											$("#demosearch").animate({height: "hide", opacity: "0"}, "fast");
    											$("#demoexample").animate({height: "show", opacity: "1"}, "fast");
    											$("#close").html('<a href="">Получение данных невозможно</a>');
    											} else {
    											$("#demosearch").animate({height: "hide", opacity: "0"}, "low");
    											$("#demoresult").animate({height: "show", opacity: "1"}, "low");
    											$("#close").html('<a href="">Данные успешно получены</a>');
    													}
    												}, 200);
    											},2100);
    										},2100);
    									},2700);
    								},2000);
    							},3700);
    						},3500);

    Это "чудо" - один из вариантов "Эмулятора GSM для получения чужих СМСок доверчивыми хомячками". "Назначение" этого... кхм... высера, доставляет не хуже способа реализации...
    Использует jQuery

    Shitafaka, 07 Февраля 2010

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