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

    +48

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    $rand = rand ( 100, 1000000000 );
    $sess = md5 ( $rand );
    echo "<form method=\"post\" action=\"?sid=" . $sess . ">";
    echo "Введите код с картинки: " . $rand . "<br>";
    echo "<input name=\"cod\"><br>";
    echo "<input type=\"submit\" value=\"Отправить\">

    сильнейшая капча

    guest, 04 Января 2009

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

    +40.5

    1. 1
    2. 2
    3. 3
    $price = round(100*$price*$selected_currency_details[1])/100;
    	if (round($price*10) == $price*10 && round($price)!=$price)
    		$price = "$price"."0"; //to avoid prices like 17.5 - write 17.50 instead

    Shop-Script PREMIUM

    guest, 03 Января 2009

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

    +22.3

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    if ($_POST['id']) {
      $id = $_POST['id'];
    } elseif ($_GET['id']) {
      $id = $_GET['id'];
    }
    if (isset($_POST['password'])) {
      $password = md5($_POST['password']);
    } elseif (isset($_GET['password'])) {
      $password = md5($_GET['password']);
    }

    guest, 03 Января 2009

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

    +15.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
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    BOOL ConvertDays(UINT32 days, SYSTEMTIME* lpTime)
    {
        int dayofweek, month, year;
        UINT8 *month_tab;
    
        //Calculate current day of the week
        dayofweek = GetDayOfWeek(days);
    
        year = ORIGINYEAR;
    
        while (days > 365)
        {
            if (IsLeapYear(year))
            {
                if (days > 366)
                {
                    days -= 366;
                    year += 1;
                }
            }
            else
            {
                days -= 365;
                year += 1;
            }
        }
    
    
        // Determine whether it is a leap year
        month_tab = (UINT8 *)((IsLeapYear(year))? monthtable_leap : monthtable);
    
        for (month=0; month<12; month++)
        {
            if (days <= month_tab[month])
                break;
            days -= month_tab[month];
        }
    
        month += 1;
    
        lpTime->wDay = days;
        lpTime->wDayOfWeek = dayofweek;
        lpTime->wMonth = month;
        lpTime->wYear = year;
    
        return TRUE;
    }

    То что вызвало зависание всех MS Zune 30Gb по всему миру.

    guest, 03 Января 2009

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

    +23.1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    <?php
    function is_featured($word_id) {
    	$sql = "SELECT * FROM `featured` WHERE `featured_id` = '$word_id'";
    	$results = mysql_query($sql);
    	if (mysql_num_rows($results)) {
    		return true;
    	} else {
    		return false;
    	}
    }

    Классический говнокод, встречаю очень часто

    guest, 03 Января 2009

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

    +32.7

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    if(count($a)>0)
    {
    	for($i=0; $i<count($a); $i++)
    	{
    		//код код код
    	}
    }

    что-то подобное)

    guest, 02 Января 2009

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

    +19

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    <?php
    function word_filter($str) {
    	$filtered = '';
    	for ($i = 0; $i <= strlen($str) - 1; $i++) {
    		$char = substr($str, $i, 1);
    		if (ctype_alpha($char)) {
    			$filtered .= $char;
    		}
    	}
    	return $filtered;
    }

    как делают дебилы: $i <= strlen($str) - 1;
    кто знает, так - $j = strlen($str), $i < $j

    guest, 01 Января 2009

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

    +20.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
    year = ORIGINYEAR; /* = 1980 */
    
    while (days > 365)
    {
        if (IsLeapYear(year))
        {
            if (days > 366)
            {
                days -= 366;
                year += 1;
            }
        }
        else
        {
            days -= 365;
            year += 1;
        }
    }

    Код часов в M$ Zune 30GB.

    guest, 01 Января 2009

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

    +30

    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
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    for i := 0 to high(vParagsChanges) do
        begin
          if vParNumIn < vParagsChanges[i].ParNo1 then
          begin
            inc(vParNumOut, vParagsChanges[i].ParNo1 - vParNumIn);
            vParNumIn := vParagsChanges[i].ParNo1;
          end;
    
          if i < high(vParagsChanges) then
            if (vParagsChanges[i].ParNo1+vParagsChanges[i].Range=vParagsChanges[i+1].ParNo1) and
            ((vParagsChanges[i].Kind=ckDelete) and (vParagsChanges[i+1].Kind=ckAdd)) then
              {if vParagsChanges[i].Range = vParagsChanges[i+1].Range then} 
              begin
                vUnitedPars := min(vParagsChanges[i].Range, vParagsChanges[i+1].Range);
                if vParagsChanges[i+1].Range >= vUnitedPars then
                  vParagsChanges[i+1].Range := vParagsChanges[i+1].Range - vUnitedPars;
                if vParagsChanges[i].Range >= vUnitedPars then
                  vParagsChanges[i].Range := vParagsChanges[i].Range - vUnitedPars;
                for j := 0 to vUnitedPars-1 do 
                begin
                  FParsHL[vParNumIn+vInsertedCount1+j].Kind := pkReplaced;
                  vTagsInfoEx := GetTagsInfo(Editor1.Parag(vParNumIn+vInsertedCount1+j).Str); 
                  FParsHL[vParNumIn+vInsertedCount1+j].ViewGroups := GetViewGroupsByChangeItems(vTagsInfoEx.TagKinds);
                  vTagsInfoEx := GetTagsInfo(Editor2.Parag(vParNumIn+vInsertedCount1+j).Str);
                  FParsHL[vParNumIn+vInsertedCount1+j].ViewGroups := FParsHL[vParNumIn+vInsertedCount1+j].ViewGroups + GetViewGroupsByChangeItems(vTagsInfoEx.TagKinds);
                  if vParagsChanges[i].InCard then 
                    FParsHL[vParNumIn+vInsertedCount1+j].ViewGroups := FParsHL[vParNumIn+vInsertedCount1+j].ViewGroups + [vgCard]
                  else
                    FParsHL[vParNumIn+vInsertedCount1+j].ViewGroups := FParsHL[vParNumIn+vInsertedCount1+j].ViewGroups + [vgText];
                end;
                inc(vParNumIn, vUnitedPars);
                inc(vParNumOut, vUnitedPars);
              end;
    
          case vParagsChanges[i].Kind of
            ckAdd: begin
              for j := 0 to vParagsChanges[i].Range-1 do
              begin
                vTmpParag := TRTFParag.Create(nil, False, False, raLeft{raRight});
                FEditor1.InsPar(vParNumIn+vInsertedCount1+j, vTmpParag, false);
                FParsHL[vParNumIn+vInsertedCount1+j].Kind := pkAdded;
                vTagsInfoEx := GetTagsInfo(Editor2.Parag(vParNumOut+vInsertedCount2+j).Str); 
                if vParagsChanges[i].InCard then 
                  FParsHL[vParNumIn+vInsertedCount1+j].ViewGroups := GetViewGroupsByChangeItems(vTagsInfoEx.TagKinds) + [vgCard]
                else 
                  FParsHL[vParNumIn+vInsertedCount1+j].ViewGroups := GetViewGroupsByChangeItems(vTagsInfoEx.TagKinds) + [vgText];
              end;
              inc(vInsertedCount1, vParagsChanges[i].Range);
              inc(vParNumOut, vParagsChanges[i].Range);
            end;
            ckDelete: begin
              for j := 0 to vParagsChanges[i].Range-1 do
              begin
                vTmpParag := TRTFParag.Create(nil, False, False, raLeft);
                FEditor2.InsPar(vParNumOut+vInsertedCount2+j, vTmpParag, false);
                FParsHL[vParNumOut+vInsertedCount2+j].Kind := pkDeleted;
                vTagsInfoEx := GetTagsInfo(Editor1.Parag(vParNumIn+vInsertedCount1+j).Str); 
                if vParagsChanges[i].InCard then 
                  FParsHL[vParNumOut+vInsertedCount2+j].ViewGroups := GetViewGroupsByChangeItems(vTagsInfoEx.TagKinds) + [vgCard]
                else 
                  FParsHL[vParNumOut+vInsertedCount2+j].ViewGroups := GetViewGroupsByChangeItems(vTagsInfoEx.TagKinds) + [vgText];
              end;
              inc(vInsertedCount2, vParagsChanges[i].Range);
              inc(vParNumIn, vParagsChanges[i].Range);
            end;
            ckModify: begin 
              if (ciAlignment in vParagsChanges[i].ChangedItems) and (vParagsChanges[i].StrChanges = nil) then
                FParsHL[vParNumIn+vInsertedCount1].Kind := pkAlignment
              else
                FParsHL[vParNumIn+vInsertedCount1].Kind := pkModified;
    
              FParsHL[vParNumIn+vInsertedCount1].Changes := GetViewChanges(vParagsChanges[i].StrChanges);
              FParsHL[vParNumIn+vInsertedCount1].ViewGroups := GetViewGroupsByChangeItems(vParagsChanges[i].ChangedItems);
              if vParagsChanges[i].InCard then 
                if (ciText in vParagsChanges[i].ChangedItems) or (ciAlignment in vParagsChanges[i].ChangedItems) then 
                begin 
                  FParsHL[vParNumIn+vInsertedCount1].ViewGroups := FParsHL[vParNumIn+vInsertedCount1].ViewGroups + [vgCard];
                  FParsHL[vParNumIn+vInsertedCount1].ViewGroups := FParsHL[vParNumIn+vInsertedCount1].ViewGroups - [vgText, vgAlignment];
    
                  for j := 0 to high(FParsHL[vParNumIn+vInsertedCount1].Changes) do 
                    if FParsHL[vParNumIn+vInsertedCount1].Changes[j].ViewGroup = vgText then
                      FParsHL[vParNumIn+vInsertedCount1].Changes[j].ViewGroup := vgCard;
                end;
    
              inc(vParNumIn, 1);
              inc(vParNumOut, 1);
            end;
          end;
        end;

    Такой г****код возник не за 1 день. Голову пришлось поломать основательно :))
    Комментарии убраны, дабы не портить удовольствие от прочтения.

    guest, 31 Декабря 2008

    Комментарии (2)
  10. Си / Говнокод #318

    +15.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
    #define begin {
    #define end   }
    
    ....
    
    //==================================
    // put a big character on the screen
    // c is index into bitmap
    void video_putchar(char x, char y, char c)  
    begin 
        v7 = x;
        for (v6=0;v6<7;v6++) 
        begin
            v1 = bitmap[c][v6]; 
            v8 = y+v6;
            ...
        end
    end

    паскалист пишет на си

    guest, 31 Декабря 2008

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