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

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

    +61

    1. 1
    $istmount = mysql_num_rows(mysql_query("SELECT `cid` FROM `usermail` WHERE `date` >='".date('Y-m-d', strtotime('-1 month'))."'"));

    Подсчет количества подписчиков за прошлый месяц. Про count(*) автор, похоже, не в курсе...
    И, чтобы не было вопросов про формат поля даты:
    date - это varchar(11) :)

    domaster, 15 Июня 2012

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

    +71

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    $var1 = "Строка";
    $var2 = true;
    
    var_dump($var1);
    var_dump($var2);
    if($var1 != $var2){
         echo "Не равны";
    }else{
         echo "Равны";
    }

    Недавно заметил странное поведение моего кода и вот что выяснилось.
    Исправил сравнением по типу !==.
    Не думал что такая вот хрень всплывет.

    haker, 01 Мая 2012

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

    +194

    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
    if(!menu_font||!oboima_text||!info||!infoR||!infoD||!infoBR||
          !oblaka1_tex||!fon1_tex||!fon2_tex||!fon3_tex||
          !galka_tex||!galka_menu_tex||!strelka_menu_tex||!strelka_menu_D_tex||
          !znak_myasnik_tex||!znak_strelok_tex||!znak_razrushitel_tex||!znak_tehnik_tex||
          !status_opit_tex||!status_udar_tex||!status_status_tex||!opit_okno_vibora_tex||
          !okno_lvl_progress_tex||!okno_lvl_progress_red_tex||!okno_lvl_progress_green_tex||!okno_lvl_polzunok_tex||
          !snd||!ak_reload1||!ak_reload2||!pm_fire||!pm_reload1||!pm_reload2||
          !pp19_fire||!pp19_reload1||!pp19_reload2||!fn_f2000_fire||!tt_fire||
          !mac_fire||!mac_reload1||!mac_reload2||!webley_fire||!webley_reload1||!webley_reload2||!milkor_fire||
          !fn_five_seven_fire||!winch_fire||!drob_reload1||!drob_pompa||!vzriv_grena1||
          !rocket_fire||!rocket2_fire||!rocket_polet||!rocket2_polet||
          !myaso_upalo1||!myaso_upalo2||!myaso_upalo3||!myaso_upalo4||!myaso_upalo5||!myaso_upalo6||!myaso_upalo7||
          !myaso_upalo8||
          !myaso_razriv_user1||!myaso_razriv_user2||
          !menu_sound||!menu_choose||
          !shot1||!headshot1||!headshot2||!headshot3||!headshot4||!headshot5||!headshot6||!headshot7||!headshot8||
          !ssik1||!ssik2||!ssik3|!ssik4||
          !ptenec_death1||
          !ak||!ak2||!ak_upgraded||!ak2_upgraded||!w_pm_tex||!w_pp19_vityaz_tex||!w_fn_f2000_tex||!w_fn_f2000_upgraded_tex||
          !w_tt_tex||!w_rpk_tex||!w_mac_tex||
          !w_winchester_tex||!w_winchester_anime_tex||!w_rpk47_tex||!w_glok_tex||!w_glok2_tex||!w_rgd5_tex||!w_milkor_tex||
          !w_panzer_tex||!w_panzer_out_tex||!w_webley_tex||!w_fn_five_seven_tex||!w_granata_podstvol_tex||!w_granata_panzer_tex||
          !w_qlz87_pushka_tex||!w_qlz87_trenoga_tex||!katana_udar_sleva_tex||
          !blood1_tex||!blood2_tex||!blood3_tex||!blood_shot1_tex||
          !blood_plyam1_tex||!blood_plyam2_tex||!blood_plyam3_tex||!blood_luzha1_tex||
          !blood_myaso1_tex||!blood_myaso2_tex||!blood_myaso3_tex||!blood_myaso4_tex||!blood_myaso5_tex||
          !blood_zayac_noga1_tex||!blood_zayac_noga2_tex||!blood_zayac_noga3_tex||!blood_zayac_noga4_tex||
          !blood_zayac_rebra1_tex||!blood_zayac_rebra2_tex||
          !blood_vzriv1_a_tex||!blood_vzriv1_b_tex||!blood_vzriv1_c_tex||!blood_vzriv1_d_tex||!blood_vzriv1_e_tex||
          !blood_vzriv1_e2_tex||
          !player1_myasnik_gogranata_ruka1_tex||!player1_myasnik_gogranata_ruka2_tex||
          !player1_strelok_gogranata_ruka1_tex||!player1_strelok_gogranata_ruka2_tex||
          !player1_razrushitel_gogranata_ruka1_tex||!player1_razrushitel_gogranata_ruka2_tex||    
          !player1_tehnik_gogranata_ruka1_tex||!player1_tehnik_gogranata_ruka2_tex||
          !player1_myasnik_tex||!player1_strelok_tex||!player1_razrushitel_tex||!player1_tehnik_tex||
          !player1_myasnik_ruka1_udar_sleva_tex||!player1_strelok_ruka1_udar_sleva_tex||
          !player1_razrushitel_ruka1_udar_sleva_tex||!player1_tehnik_ruka1_udar_sleva_tex||
          !player1_myasnik_ruka1_pistol_tex||!player1_strelok_ruka1_pistol_tex||
          !player1_razrushitel_ruka1_pistol_tex||!player1_tehnik_ruka1_pistol_tex||
          !player1_myasnik_ruka1_vintovka_tex||!player1_strelok_ruka1_vintovka_tex||
          !player1_razrushitel_ruka1_vintovka_tex||!player1_tehnik_ruka1_vintovka_tex||
          !player1_myasnik_ruka1_winch_tex||!player1_strelok_ruka1_winch_tex||
          !player1_razrushitel_ruka1_winch_tex||!player1_tehnik_ruka1_winch_tex||
          !player2_strelok_tex||!player2_gogranata_ruka1_tex||!player2_gogranata_ruka2_tex||
          !player2_strelok_ruka1_udar_sleva_tex||!player2_strelok_ruka1_vintovka_tex||!player2_strelok_ruka1_pistol_tex||
          !zayac_go_tex||!zayac_uhi_k_tex||!zayac_uhi_s_tex||!zayac_uhi_tex||
          !zayac_boshka_tex||!zayac_boshka_bezuh_tex||
          !volk_go_tex||!volk_trup1_a_tex||!volk_trup1_b_tex||!volk_trup1_c_tex||
          !medved_go_tex||!medved_boshka1_tex||

    http://www.gamedev.ru/projects/forum/?id=160897
    ЩИ!!!! ЗАЛЕЙ ВЕСЬ ЭКРАН КРОВЬЮ УВИДЕВ ИСХОДНЫЙ КОД

    TarasB, 09 Апреля 2012

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

    +149

    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(){
      // ... тут могла быть ваша реклама
      var answers_height = 0;
      $(".game-test .answers li a").each(function(){                              // Array.prototype.sort не для нас (как и underscore.js' max)
        if (answers_height < $(this).height()) answers_height = $(this).height();
      }).click(function(){                                                        // чувак не в курсе, что можно вешать онклик прямо на li
        $(this).parent().addClass("checked").siblings().removeClass("checked");   // ничего jQuery#parent() нас спасёт
        $(this).parent().find("input").click();                                   // замкнуть инпут в переменную не для нас
        alert($(this).parent().parent().find("input:checked").val());             // да и зачем, когда есть jQuery?
        return false;                                                             // Event#preventDefault() не для нас, но ничего, jQuery поймёт и так
      });
      $(".game-test .answers li a").height(answers_height);                       // ах да, совсем забыл...
    });

    давным-давно известно, что верстальщики не умеют кодить, но всё же

    P.S. JQuery говно.

    maker_up, 06 Апреля 2012

    Комментарии (25)
  6. C++ / Говнокод #9553

    +1001

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    p1=Vec2(cos(pi/180*mParticles[index].mRotation)*1.2f*radius,sin(pi/180*mParticles[index].mRotation)*1.2f*radius)+center+mParticles[index].mPos;
    p2=Vec2(cos(pi+pi/180*mParticles[index].mRotation)*1.2f*radius,sin(pi+pi/180*mParticles[index].mRotation)*1.2f*radius)+center+mParticles[index].mPos;
    DrawLine((int)p1.x,(int)p1.y,(int)p2.x,(int)p2.y);
    p1=Vec2(cos(pi/2+pi/180*mParticles[index].mRotation)*1.2f*radius,sin(pi/2+pi/180*mParticles[index].mRotation)*1.2f*radius)+center+mParticles[index].mPos;
    p2=Vec2(cos(3*pi/2+pi/180*mParticles[index].mRotation)*1.2f*radius,sin(3*pi/2+pi/180*mParticles[index].mRotation)*1.2f*radius)+center+mParticles[index].mPos;
    DrawLine((int)p1.x,(int)p1.y,(int)p2.x,(int)p2.y);

    lifemaker, 27 Февраля 2012

    Комментарии (25)
  7. Pascal / Говнокод #9430

    +88

    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
    var A:array of record
      Foo: integer;
    end;
    
    function NewNode: integer;
    begin
      SetLength(A, Length(A)+1);
      Result := High(A);
      // возвращаем не указатель на последний элемент,
      // а номер последнего элемента, потому что массив динамический и указатели нестабильны
    end;
    
    procedure DoSmth(var i: integer);
    var
      n1,n2: integer;
    begin
      n1 := NewNode;
      n2 := NewNode;
      // дальше что-то проделывааем над A[n1] и A[n2]
      i := A[n1].Foo + A[n2].Foo;
    end;
    
    var
      NewIndex: integer;
    begin
      NewIndex := NewNode;
      DoSmth(A[NewIndex].Foo);
    end.

    Угадайте, почему это не будет работать и приведёт к порче памяти.

    TarasB, 15 Февраля 2012

    Комментарии (25)
  8. Си / Говнокод #9100

    +139

    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
    #include "stdio.h"
    #include "string.h"
    int main (int argc, char *argv[])
    {
    	FILE * f1= fopen("новый файл","r");
    	char a[3];
    	char * b= &a[0];
    	int i=0;
    	for (i = 0; i < 80; i ++)
    	{
    		char a1[400]="java -jar TextCode.jar ";
    		char a2[40]="/home/dan/Education/Subj/MFCIT/roz/";
    		fscanf(f1,"%s",b);
    		strcat(a1,a2);
    		strcat(a1,b);
    		strcat(a1,"/");
    		strcat(a1,b);
    		strcat(a1," ");
    		strcat(a1,a2);
    		strcat(a1,b);
    		strcat(a1,"/");
    		strcat(a1,b);
    		strcat(a1,".c ");
    		strcat(a1,a2);
    		strcat(a1,b);
    		strcat(a1,"/");
    		strcat(a1,b);
    		strcat(a1,".cod");
    		system(a1);
    	}
    	return 0;
    }

    Шифрует тексты при помощи проги на Java

    Abbath, 12 Января 2012

    Комментарии (25)
  9. Pascal / Говнокод #9063

    +96

    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
    WM_KEYDOWN: begin
            if GetAsyncKeyState(VK_CONTROL) <> 0 then case W of
              integer('X') : SendMessage(H, WM_CUT,   0, 0);
              integer('C') : SendMessage(H, WM_COPY,  0, 0);
              integer('V') : SendMessage(H, WM_PASTE, 0, 0);
              integer('Z') : SendMessage(H, WM_UNDO , 0, 0);
              integer('Y') : ReDo(H);
              integer('A') : SelectAll(H);
              VK_INSERT    : SendMessage(H, WM_COPY,  0, 0);
              VK_PRIOR     : MoveCaretLine   (H, -1000000);  
              VK_NEXT      : MoveCaretLine   (H,  1000000);
              VK_DELETE    : SendMessage(H, WM_CLEAR, 0, 0);
          //  end else if GetAsyncKeyState(VK_ALT) then case W of
          //    VK_BACK      : SendMessage(H, WM_UNDO , 0, 0);
            end else if GetAsyncKeyState(VK_SHIFT) <> 0 then case W of
              VK_DELETE    : SendMessage(H, WM_CUT  , 0, 0);
              VK_INSERT    : SendMessage(H, WM_PASTE, 0, 0);
            end else case W of
              VK_SHIFT     : SDown(H);
              VK_LEFT      : MoveCaretSymbol (H, -1);
              VK_RIGHT     : MoveCaretSymbol (H,  1);
              VK_UP        : MoveCaretLine   (H, -1);
              VK_DOWN      : MoveCaretLine   (H,  1);
              VK_PRIOR     : MoveCaretLine   (H, -MaxLinesInScreenByH(H));
              VK_NEXT      : MoveCaretLine   (H,  MaxLinesInScreenByH(H));
              VK_DELETE    : DeleteSymbol(H, False);
            end;
            DrawText(H);
            Exit;
          end;

    Пишу свой винапи-класс типа Edit.
    Так сделаны горячие клавиши.

    TarasB, 10 Января 2012

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

    +145

    1. 1
    <img title="говнокод, смешной код, быдлокод, быдлокодеры, индусы, для программистов, про программистов, индусский код, записки программиста, говно, говнокод на php, mysql, perl" class="highslide" onclick="try{hs.expand(this,{src:'/c/128681/d/img_3302_1.jpg'});}catch(e){}" alt="говнокод, смешной код, быдлокод, быдлокодеры, индусы, для программистов, про программистов, индусский код, записки программиста, говно, говнокод на php, mysql, perl" src="/c/128681/d/363042302_1.jpg" width="173" height="269" border="0" />

    Камрад-фотограф так хорошо отзывался о вебдев-конторе "ГигаТруп", где он заказал сайт и SEO, что я решил посмотреть исходники страницы и поучиться их высокому мастерству.

    Код одной из сотни картинок с превьюшками (да, всё сделано в одну страницу!) вы видите выше. А SEO там типичное - грабим ключевые слова, по котором найден сайт, кладём их в h1, замазываем фоном-картинкой и попадаем в бан через несколько индексаций, когда деньги уже заплачены и на клиента насрать.

    Так работает русский ебизнес.

    actuator, 23 Ноября 2011

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

    +152

    1. 1
    <form action="/orders/saveorder/?act=update&order=<?php echo $this->order['id'];?>&plan_id=<?php echo $this->treatment_plan['id'];?>&plan=<?php echo $this->treatment_plan['treatment_plan_number'];?>" method="post" name="formas" class="order_form">

    Говнокод "среднего программиста" - как он сам себя назвал

    SuperChel, 12 Ноября 2011

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