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

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

    +154

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    var ajax = new Ajax.Request(this.ADDRESS,
        {
            method:'post',
            parameters:{'secdata':secdata},
            onComplete: function ( data ){ 
                //console.log( data.responseText )
                setTimeout( function(){ currentObj.callbackCompleteCommit( currentObj.connection.unpuck( data.responseText) )}, 0 ); //out of XHR handler
            },
            onFailure: function(){hideWaiter(); errorResponse(null,'<b>ERROR:</b>connect') },
            asynchronous: true
        });

    Prototype 1.7.1
    Это чувство, когда мешают try catch во внешнем обработчике.
    Кстати, я видел фреймворк развивается: в git, и хелпе он уже 1.7.2 )

    Dart_Sergius, 30 Апреля 2014

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

    +147

    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
    function get_avatar($id){
    
    $mysqli = connectDB();
    
    $avatar_get = $mysqli->query("SELECT `avatar` FROM `users` WHERE `id`='$id'");
    
    $line = $result_set->fetch_assoc();
    
    closeDB($mysqli);
    
    return $line["avatar"];
    
    }

    пожалуйста помогите найти ошибку

    norto, 17 Марта 2014

    Комментарии (35)
  4. Python / Говнокод #14455

    −94

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    def f(l = []):
            l.append(len(l))
            return l
    f()
    f()
    print f()

    Есть мнения что выведет?
    http://ideone.com/Q6Oc2I

    laMer007, 31 Января 2014

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

    +150

    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
    $up = mysql_fetch_array (mysql_query("SELECT name FROM locations WHERE id='p_".$x."_".($y-1)."_'"));
    $down = mysql_fetch_array (mysql_query("SELECT name FROM locations WHERE id='p_".$x."_".($y+1)."_'"));
    $right = mysql_fetch_array (mysql_query("SELECT name FROM locations WHERE id='p_".($x+1)."_".($y)."_'"));
    $left = mysql_fetch_array (mysql_query("SELECT name FROM locations WHERE id='p_".($x-1)."_".($y)."_'"));
    $lup = mysql_fetch_array (mysql_query("SELECT name FROM locations WHERE id='p_".($x-1)."_".($y-1)."_'"));
    $rup = mysql_fetch_array (mysql_query("SELECT name FROM locations WHERE id='p_".($x+1)."_".($y-1)."_'"));
    $rdown = mysql_fetch_array (mysql_query("SELECT name FROM locations WHERE id='p_".($x+1)."_".($y+1)."_'"));
    $ldown = mysql_fetch_array (mysql_query("SELECT name FROM locations WHERE id='p_".($x-1)."_".($y+1)."_'"));
    if (@$up["name"]) $up = 1; else $up=0;
    if (@$down["name"]) $down = 1;  else $down=0;
    if (@$right["name"]) $right = 1;  else $right=0;
    if (@$left["name"]) $left = 1; else $left=0;
    if (@$lup["name"]) $lup = 1; else $lup=0;
    if (@$rup["name"]) $rup = 1; else $rup=0;
    if (@$rdown["name"]) $rdown = 1;  else $rdown=0;
    if (@$ldown["name"]) $ldown = 1;  else $ldown=0;
    if ($_GET["go_nature"]=='up' and $up==1) $y-=1;
    if ($_GET["go_nature"]=='down' and $down==1) $y+=1;
    if ($_GET["go_nature"]=='left' and $left==1) $x-=1;
    if ($_GET["go_nature"]=='right' and $right==1) $x+=1;
    if ($_GET["go_nature"]=='lup' and $lup==1) $x-=1;
    if ($_GET["go_nature"]=='rup' and $rup==1) $x+=1;
    if ($_GET["go_nature"]=='lup' and $lup==1) $y-=1;
    if ($_GET["go_nature"]=='rup' and $rup==1) $y-=1;
    if ($_GET["go_nature"]=='rdown' and $rdown==1) $x+=1;
    if ($_GET["go_nature"]=='ldown' and $ldown==1) $x-=1;
    if ($_GET["go_nature"]=='rdown' and $rdown==1) $y+=1;
    if ($_GET["go_nature"]=='ldown' and $ldown==1) $y+=1;

    вксняшка

    SuperChel, 16 Января 2014

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

    +156

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    /* @component Phoca Component
     * @copyright Copyright (C) Jan Pavelka www.phoca.cz
    */
    	protected function getLabel() {
    		echo '<div class="clearfix"></div>';
    		return parent::getLabel();
    		echo '<div class="clearfix"></div>';
    	}

    Это диагноз...

    virtual_cia, 18 Декабря 2013

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

    +135

    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
    if (btnFromRecorder.Text == "Запись с микрофона")
                    {
                        _Recorder._OnlyAudioReconition.StartRecognition();
                        btnFromRecorder.Text = "Остановить запись";
    
                        // запускаем ожидающий поток
                        _stateOfWaitingThread = StateOfWaitingThread.UsedByRecorder;
    
                        // запуск потока
                        _ThreadWaitingForEndOfProcess = new Thread(ThreadWaitingForEndOfPlayingProcessing);
                        _ThreadWaitingForEndOfProcess.Name = "ThreadWaitingForEndOfProcess";
                        _ThreadWaitingForEndOfProcess.Start();
                    }
                    else
                    {
                        _Recorder._OnlyAudioReconition.FinishRecognition();
                        btnFromRecorder.Text = "Запись с микрофона";
                    }

    вот, нашелся кусочек старого говнеца от бывшего насяльника. Из серии - зачем нам лишние булевы переменные в коде. + важное замечание _OnlyAudioReconition - это поле... public поле... Инкапсуляция? неее, не слышали.:-))))

    CraxyFright, 19 Октября 2013

    Комментарии (35)
  8. Pascal / Говнокод #13959

    +140

    1. 1
    2. 2
    3. 3
    Товарищи, подскажите, как прикрутить скриптовый движок к парсеру на Delphi (а заодно и сам движок)!
    Извращение это нужно, чтобы распарсить сайт, использующий скрипты.
    webbrowser не подходит - слишком тормозно и глючно.

    Stertor, 16 Октября 2013

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

    +64

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    Товарищи, стоит задача: найти количество слов в строке.
     Автор  (http://programmersforum.ru/showthread.php?p=1269850#post1269850) просто делит строку по пробелам, затем
    подсчитывает кол-во слов.
    Я же,  говорю, что такой подход НЕПРАВИЛЕН,  т.к. в русском
    языке (да и не только) слова разделяются символами пунктуации, которые сами в состав слова не входят - следовательно, делить нужно по ним: 
     [code]" ' . , ! ?: ;  -  + <пробел> <табуляция> ( )[code]
     На меня сразу же наехали и поудаляли мои сообщения. Неужели я не прав?

    Баян все еще там: http://programmersforum.ru/showthread.php?p=1269850#post1269850

    Stertor, 28 Августа 2013

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

    +117

    1. 1
    \d+[\+-x\*]\d+\d+[\+-x\*\d+

    Даже не говнокод, а фиг знает что. Решил сегодня поизучить регеспы, почитал пару мануалов, зашел на MSDN

    http://msdn.microsoft.com/ru-ru/library/az24scfc.aspx

    А там этот пример. И указано что он находит "2+2" и "3*9" в "(2+2) * 3*9"

    Я подозреваю, что они хотели написать @"\d+[+-\\*]\d+". Печально, когда человек, день знакомый с регулярками, находит в их примерах ошибки(

    kegdan, 06 Августа 2013

    Комментарии (35)
  11. Pascal / Говнокод #13494

    +131

    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
    1
    1
    	
    
    Имеется графический обозреватель картинок, где мини-изображения хранятся в ImageList, а выводятся ListView (поименованные графические файлы). При открытие папок с картинками (где большое количество картинок) возникает торможение отображения. Вся программа начинает тормозить, ожидая загрузки картинок в ListView. Чтобы избежать такого, я вынес загрузку ListBox в отдельный процесс Thread. В результате возникла другая проблема: при загрузке картинок, часть загружается просто черными квадратами. Как избавиться от этого неприятного эффекта?
    
    Код выбора папки для дальнейшего просмотра содержимого:
    
    procedure TForm1.DirectoryListBox1Change(Sender: TObject);
    begin
      Form1.ListView1.Clear;
      Form1.ImageList1.Clear;
      NewThread:=TNewThread.Create(false);
      NewThread.FreeOnTerminate:=true;
      NewThread.Priority:=tpHighest;
      NewThread.Resume;
    end;
    
    Код отдельно выделенного процесса:
    
    procedure TNewThread.Execute;
    begin
      Form1.FillListView(form1.DirectoryListBox1.Directory , '*.jpg');
      Form1.FillListView(form1.DirectoryListBox1.Directory, '*.bmp');
    end;
    
    И наконец код обработки графических файлов с последующей загрузкой в ListBox:
    
    procedure TForm1.fillListView(path: string; mask: string = '*.jpg');
    var
      sr:  TSearchRec;
      img: TPicture;
      bmp: TBitmap;
      pic: TBitMap;
      x,y: integer;
    begin
      img := TPicture.Create;
      bmp := TBitMap.Create;
      pic := TBitMap.Create;
    
      With Form1 do
      if FindFirst(path +'\'+mask, faAnyFile, sr) = 0 then
      begin
        repeat
          if (sr.Name<>'.') and (sr.Name<>'..') and (sr.Attr<>faDirectory) then
          //if (sr.Attr and $20) = $20 then
          begin
            try
              img.LoadFromFile(path +'\'+ sr.Name);
            except
              Continue;
            end;
            bmp.Assign(img.Graphic);
            x:=bmp.Width;
            y:=bmp.Height;
            pic.Width := ImageList1.Width;
            pic.Height:= ImageList1.Height;
            pic.Canvas.Brush.Color :=clWhite;
            pic.Canvas.FillRect(Canvas.ClipRect);
            pic.Canvas.StretchDraw(Rect(0,0,pic.Width, Round((pic.Height*y)/x)), bmp);
            ImageList1.Add(pic, nil);
    
            with ListView1.Items.Add do
            begin
              Caption := sr.Name;
              ImageIndex := ListView1.Items.Count-1;
            end;
          end;
        until FindNext(sr) <> 0;
        FindClose(sr);
      end;
      img.Free;
      bmp.Free;
      pic.Free;
    end;

    Не сопротивляйся, смерть сладка.

    http://hashcode.ru/questions/86688/delphi-%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0-%D1%81-listview-%D0%B2-%D0%B4%D0%B5%D0%BB%D1%84%D0%B8

    Stertor, 27 Июля 2013

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