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

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

    +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
    $proArray = array();
    while(strlen($result))
    {
    	// name
    	$keypos= strpos($result,'=') ;
    	$keyval = substr($result,0,$keypos);
    	// value
    	$valuepos = strpos($result,'&') ? strpos($result,'&') : strlen($result);
    	$valval = substr($result,$keypos+1,$valuepos-$keypos-1);
    	// decoding the respose
    	$proArray[$keyval] = $valval;
    	$result = substr($result,$valuepos+1,strlen($result));
    }

    Разбор URL-encoded ответа от платёжной системы.
    Знал ли автор про функцию parse_str() ?

    hdkeeper, 28 Января 2011

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

    +173

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    $file='spiski.txt';
    $handle = fopen($file, "r");
    while ( $handle == FALSE )
    {
    $handle = fopen($file, "r");
    }

    Метод назойливого открывания файла.

    basename, 19 Января 2011

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

    +162

    1. 1
    $text = preg_replace("#<a(.*?)\/a>|(h.*?:\/\/)?([a-z0-9- .]+\.[a-z ]*)#si","",$text);

    Регулярное выражение, задача которого уничтожить все существующие ссылки на сторонние сайты содержащиеся в переменной $text
    Друг посчитал, что коду место на этом ресурсе :)

    wowerwower, 15 Января 2011

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

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    коеокококоокококоъпакопмшъуаоимапщиттитеапиьльиильлилпььпиьлиьлиьлиьлипьлпиьлпиь
    аак3ruiogburfguiowdfbuiefbuwfwfbujhwfhd
    f
    fgfgifgdfuidfui<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<rfgifgeoefgbnioefbo>>>>>>>>>>>>>>>>>>>.>>>>>,><><><><><><><><><><><>><><><
    rteetbmiiitbtbbbm////////////pfuheprffd;dfldfklqefwefpprprrpperprp////????\\\\\\v,gkkhghkegmdtk:\\bjdgrughrtugbfu.efbbuweh
    sdf
    гглглгллглглглгjetfgbuiobuibuty

    настояще гавно

    ujkbktj, 31 Декабря 2010

    Комментарии (27)
  6. Куча / Говнокод #4970

    +66

    1. 1
    2. 2
    cd TempDir
    del /f /q /s *

    Когда-то давно написал батник для автоматизации каких-то работ по удалению временных файлов. Там были переходы посложнее между папками, чем сдесь, но для илюстрации соли фейла подойдет и это.
    Однажды моё предположение о существовании некоторых папок неоправдалось. И некоторые из комманд типа cd TempDir сфейлили. Естественно, на ошибки результат их выполнения я не проверял и при ерроре не выходил из батника. Запустил я в тот роковой день батник и смотрю - что-то очень долго удаляется директория временных файлов...
    Подскос пошёл весь логический диск с данными. :D
    В результате той комбинации не сфейлевших комманд cd текущем каталогом оказался корневой каталог диска.
    Естественно, батник до наших дней не дошёл, тк был на этом логическом диске и слава богу. :D

    Говногость, 18 Декабря 2010

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

    +121

    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
    [DataContract]
         public class DismissForm1ReportItem {
              [DataMember]
              public int grPersonalCode { get; set; }
              [DataMember]
              public string grPersonalName { get; set; }
              [DataMember]
              public int grIndustrialCode { get; set; }
              [DataMember]
              public string grIndustrialName { get; set; }
              [DataMember]
              public string cexCode { get; set; }
              [DataMember]
              public string cexName { get; set; }
              [DataMember]
              public int totalDismissed { get; set; }
              [DataMember]
              public int dismissedProfGroup1 { get; set; }
              [DataMember]
              public int dismissedProfGroup2 { get; set; }
              [DataMember]
              public int dismissedProfGroup3 { get; set; }
              [DataMember]
              public int dismissedProfGroup4 { get; set; }
              [DataMember]
              public int dismissedProfGroup5 { get; set; }
              [DataMember]
              public int dismissedProfGroup6 { get; set; }
              [DataMember]
              public int dismissedProfGroup7 { get; set; }
              [DataMember]
              public int dismissedProfGroup8 { get; set; }
              [DataMember]
              public int dismissedProfGroup9 { get; set; }
              [DataMember]
              public int dismissedProfGroup10 { get; set; }
              [DataMember]
              public int dismissedProfGroup11 { get; set; }
              [DataMember]
              public int dismissedProfGroup12 { get; set; }
              [DataMember]
              public int dismissedProfGroup13 { get; set; }
              [DataMember]
              public int dismissedProfGroup14 { get; set; }
              [DataMember]
              public int dismissedProfGroupOther { get; set; }
         }

    Откуда вот берутся такие наклонности? Как можно так называть члены классов? (Это только один подобный класс из множества!) Может быть сделать специальную версию Framework'а для таких людей, где классам давать имена Class1, Class2, ..., а методам Method1, Method2, ...

    Guid, 13 Декабря 2010

    Комментарии (27)
  8. Java / Говнокод #4862

    +69

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    public static Integer valueOf(int i) {
            if(i >= -128 && i <= IntegerCache.high)
                return IntegerCache.cache[i + 128];
            else
                return new Integer(i);
        }

    Код java.lang.Integer

    из этого как минимум следует что: Integer.valueOf(-130) != Integer.valueOf(-130).

    KoderZ, 08 Декабря 2010

    Комментарии (27)
  9. VisualBasic / Говнокод #4728

    −93

    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
    Private Sub Label10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label10.Click
    
            RadioButton1.Checked = False
            RadioButton2.Checked = False
            RadioButton3.Checked = False
            RadioButton4.Checked = False
            RadioButton5.Checked = False
            RadioButton6.Checked = False
            RadioButton7.Checked = False
            RadioButton8.Checked = False
            RadioButton9.Checked = False
            RadioButton10.Checked = False
    
            RadioButton11.Checked = False
            RadioButton12.Checked = False
            RadioButton13.Checked = False
            RadioButton14.Checked = False
            RadioButton15.Checked = False
            RadioButton16.Checked = False
            RadioButton17.Checked = False
            RadioButton18.Checked = False
            RadioButton19.Checked = False
            RadioButton20.Checked = False
    
            RadioButton21.Checked = False
            RadioButton22.Checked = False
            RadioButton23.Checked = False
            RadioButton24.Checked = False
            RadioButton25.Checked = False
            RadioButton26.Checked = False
            RadioButton27.Checked = False
            RadioButton28.Checked = False
            RadioButton29.Checked = False
            RadioButton30.Checked = False
    
            RadioButton31.Checked = False
    
            RadioButton33.Checked = False
            RadioButton34.Checked = False
            RadioButton35.Checked = False
            RadioButton36.Checked = False
            RadioButton37.Checked = False
            RadioButton38.Checked = False
            RadioButton39.Checked = False
            RadioButton40.Checked = False
            RadioButton41.Checked = False
            RadioButton44.Checked = False
    
            Button1.Enabled = True
            Panel5.Visible = True
            Panel7.Visible = False
            Panel3.Visible = False
            Panel4.Visible = False
            Panel6.Visible = False
            Panel8.Visible = False
            Panel10.Visible = False
            Panel2.Visible = False
            Panel14.Visible = False
            Panel16.Visible = False
            Panel1.Visible = False
    
    
        End Sub

    А вот так кодят ценные специалисты, работающие за неплохие деньги в столичных ВУЗах .

    non_def, 23 Ноября 2010

    Комментарии (27)
  10. PHP / Говнокод #4700

    +166

    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
    echo "<body>";
    echo "<h1>Картинки</h1>";
    //$num =$_GET[num];
    $start = 0 ;
    $start=$_GET['start'];
    $ls_dir = $_GET ['ls_dir'];
    if (!isset($ls_dir ))
    {
        $ls_dir ="./pictures" ;
    }
    $num =10;
    if (!isset($start))
    {
        $start =0 ;
    }
    echo "$ls_dir";
    $dir = `ls $ls_dir | awk '/\.[a-zA-Z][a-zA-Z][a-zA-Z][a-zA-Z]?$/ {print "&&&" $1}'`;
    $fold_dir = `ls -l $ls_dir | awk '/^d/ {print "&&&" $9}'`;
    $pic_list = explode("&&&",$dir);
    $dir_list =explode("&&&",$fold_dir);
     
    echo "$fold_dir";
     
     
    ?>
     
    <h3>Доступные папки</h3>
    <ul>
    <?php
    for ($i=1;$i< count($dir_list);$i++)
    {
        $cur_val=$ls_dir."/".$dir_list[$i];
        echo "<li>";
     
    	 echo "<a href=pictures.php?start=0&ls_dir=$cur_val>";
        //echo $cur_val;
        echo "<img src=fold_im.JPG width=34 height=49 />";
    //    echo "&start=";
    //    echo $start;
    //    echo ">"; 
        echo $dir_list[$i];
        echo "</a>";
        echo "</li>";
    }
     
     
    ?>
     
     
    </ul>
     
     
    <table width="100%" border="1">
     
    <tr>
    <td width="10%">
    </td>
    <td><h1>Картинки из папки <?php echo $ls_dir ?></h1>
    </td>
    </tr>
    <?php
     
    for ($i = $start +1;($i<$start +1+ $num)&&($i<count($pic_list));$i++)
    {
        echo "<tr>";
        echo "<td width =10% >&nbsp</td>";
        $pic = $ls_dir."/".$pic_list[$i];
        echo "<td>";
        echo "<a href = $pic><img src=$pic/><a/>";
        echo "</td>";
        echo "</tr>";
    }
     
    ?>

    alexrp, 21 Ноября 2010

    Комментарии (27)
  11. ActionScript / Говнокод #4580

    −155

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    function requiredVersion(required) 
    { 
      version = getVersionNumber();
      if (version.nl < required.nl) return(false);
      if (version.nl > required.nl) return(true);
      if (version.n2 < required.n2) return (false);
      if (version.n2 > required.n2) return (true);
      if (version.n3 < required.n3) return (false); 
      if (version.n3 > required.n3) return (true);
      if (version.n4 < required.n4) return (false); 
      if (version.n4 >= required.n4) return (true);
    }

    psina-from-ua, 10 Ноября 2010

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