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

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

    +162

    1. 1
    2. 2
    <tr{if ($key+1)=="2" OR ($key+1)=="4" OR ($key+1)=="6" OR ($key+1)=="8" OR ($key+1)=="10" OR 
    ($key+1)=="12" OR ($key+1)=="14" OR ($key+1)=="16" OR ($key+1)=="18" OR ($key+1)=="20"} class="dark"{/if}>

    код с реального, довольно серьезного проекта) прогера называют оч толковым)

    i10k, 23 Апреля 2011

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

    +162

    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
    protected function getMebelNavigationHtml()
    {
    $nav = <<<EODD
    <td>
    	<div class="g-c right">
    		<div class="tab">
    			<nobr><a href="/mebel">Мебель</a></nobr>
    		</div>
    		<div class="body">
    			<table>
    				<tr>
    					<td class="col">
    						<ul>
    							<li class="head"><a href="/mebel/stulchiki">Стульчики</a></li>
    							<li class="head"><a href="/mebel/krovatki">Кроватки</a></li>
    							<li class="head"><a href="/mebel/manezhi">Манежи</a></li>
    							<li class="head"><a href="/mebel/komody">Комоды</a></li>
    							<li class="head"><a href="/mebel/pelenalnye-stoliki">Пеленальные столики</a></li>
    							<li class="head"><a href="/mebel/electrokacheli">Электрокачели</a></li>
    							<li class="head"><a href="/mebel/napolnie-ka4eli">Напольные качели</a></li>
    							<li class="head"><a href="/mebel/kresla-kachalki">Кресла-качалки</a></li>
    							<li class="head"><a href="/mebel/hodunki">Ходунки</a></li>
    							<li class="head"><a href="/mebel/kolybeli">Колыбели</a></li>
    							<li class="head"><a href="/mebel/shkafy">Шкафы</a></li>
    							<li class="head"><a href="/mebel/detskie-komnaty">Детские комнаты</a></li>
    							<li class="head"><a href="/mebel/matrasy">Матрасы</a></li>
    							<li class="head"><a href="/mebel/aksessuary">Аксессуары</a></li>
    						</ul>
    					</td>
    					<td class="col">
    						<ul>
    							<li class="head"><a href="/mebel/postel">Постельные принадлежности</a></li>
    							<li><a href="/mebel/postel/odeyala">Одеяла</a></li>
    							<li><a href="/mebel/postel/podushki">Подушки</a></li>
    							<li><a href="/mebel/postel/komplekty-postelnogo-belya">Комплекты постельного белья</a></li>
    							<li><a href="/mebel/postel/spalnye-meshki">Спальные мешки</a></li>
    							<li><a href="/mebel/postel/komplekty-na-vypisku">Комплекты на выписку</a></li>
    							<li><a href="/mebel/postel/baldahiny">Балдахины</a></li>
    							<li><a href="/mebel/postel/aksessuary">Аксессуары</a></li>
    							<li><a href="/mebel/postel/prosini-i-kleenki">Простыни и клеенки</a></li>
    							<li><a href="/mebel/postel/bortiki">Бортики</a></li>
    						</ul>
    					</td>
    				</tr>
    			</table>
    		</div>
    	</div>
    	<a href="/mebel">Мебель</a>
    </td>
    EODD;
    		return $nav;
    }

    Хардкоженая навигация. Даже не в шаблоне...

    vsushkov, 21 Апреля 2011

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

    +162

    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
    <?php
    if(isset($_GET['pid'])){
    $pid = $_GET['pid'];
    echo $pid;
    $szi=iconv_strlen($pid);
    if(file_exists("./$pid.txt")){
    $fc=fopen("$pid.txt","r");
    if($fc<0)exit(0);
    fseek($fc,0,0);
    $url = fread($fc,filesize("./$pid.txt"));
    fclose($fc);
      header('Location: '.$url);
    } else {
      echo "File not exist<br>";
    };
    
    };
    $idx=0;
    $fc=fopen("index.txt","r");
    if($fc<0)exit(0);
    $idx = fread($fc,filesize("index.txt"));
    fclose($fc);
    $fc=fopen("./$idx.txt","r");
    if($fc<0)exit(0);
    $url = fread($fc,filesize("./$idx.txt"));
    fclose($fc);
    echo "<a href=\"http://netelis.hmsite.net/index.php?pid=$idx\">$url</a>";
    
    if(isset($_POST['url'])){
    $url=$_POST['url'];
    if (parse_url($url)) {
        echo "Your url is ok.";
      for($i=0;$i<=$idx;$i+=2){
        $fc=fopen("$i.txt","r");
      if($fc<0)exit(0);
        $urla = fread($fc,filesize("$i.txt"));
        fclose($fc);
       // echo "$urla<br>";
        if(strcmp($url,$urla)==0){
            echo "<a href=\"http://netelis.hmsite.net/index.php?pid=$i\">http://netelis.hmsite.net/index.php?pid=$i</a>";
            exit(0);
        };
        };
    } else {
        echo "Wrong url.$url";
        exit(0);
    }
    $sz=iconv_strlen($idx);
    $idx+=2;
      $fn=$idx.".txt";
      $fd=fopen($fn,"a+");
      if($fd<0)exit(0);
      fwrite($fd,$url);
      fclose($fd);
    unlink("./index.txt");
      $fd2=fopen("index.txt","a+");
      if($fd2<0)exit(0);
      fwrite($fd2,$idx);
      fclose($fd2);
    echo "<a href=\"http://netelis.hmsite.net/index.php?pid=$idx\">http://netelis.hmsite.net/index.php?pid=$idx</a>";
    };
    
    
    ?>
    <H1> Short URL generator</H1>
    <form action="" method="POST" name="ifr">
    Enter URL:
    <input type=text name="url" value="http://">
    <br>
    <input type=submit name="sbm" value="OK">
    </form>

    Скрипт с сайта

    AliceGoth, 20 Апреля 2011

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

    +162

    1. 1
    2. 2
    3. 3
    4. 4
    $n = array(38, 95,10, 8, 95, 38, 10);
    sort($n);
    $n = implode(',', $n);
    $uniq_num = preg_replace('#,?(\d+),\1,?#', '', $n);

    _oWo_, 19 Апреля 2011

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

    +162

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    function db_date_time($time = null) {
    	if (is_null($time)) {
    		$time = time();
    	}
    	$s = explode('.', date("d.m.Y.H.i.s", $time));
    	return $s[2] . '-' . $s[1] . '-' . $s[0] . ' ' . $s[3] . ':' . $s[4] . ':' . $s[5];
    }

    Silentium, 10 Апреля 2011

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

    +162

    1. 1
    2. 2
    3. 3
    4. 4
    $val = $_POST["value"];
    $val = str_replace("e", "&#0101;", $val);
    $val = str_replace("E", "&#0069;", $val);
    mysql_query("insert into `table` (`value`) values '$val'");

    Это мы так спасаемся от mysql-инъекций.

    ling, 08 Апреля 2011

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

    +162

    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
    //Проверка данных селекта:
    switch (@$_POST['mtime']) {
        case "январь": $mnumb = ("01"); break;
        case "февраль": $mnumb = ("02"); break;
        case "март": $mnumb = ("03"); break;
        case "апрель": $mnumb = ("04"); break;
        case "май": $mnumb = ("05"); break;
        case "июнь": $mnumb = ("06"); break;
        case "июль": $mnumb = ("07"); break;
        case "август": $mnumb = ("08"); break;
        case "сентябрь": $mnumb = ("09"); break;
        case "октябрь": $mnumb = ("10"); break;
        case "ноябрь": $mnumb = ("11"); break;
        case "декабрь": $mnumb = ("12"); break;
    }
    
    // а вот так выводится сам селект:
        <?
        $mas2 = Array("январь","февраль","март","апрель","май","июнь","июль","август","сентябрь","октябрь","ноябрь","декабрь");
        switch (@date("m",time())) {
            case "01": $mnow = ("январь"); break;
            case "02": $mnow = ("февраль"); break;
            case "03": $mnow = ("март"); break;
            case "04": $mnow = ("апрель"); break;
            case "05": $mnow = ("май"); break;
            case "06": $mnow = ("июнь"); break;
            case "07": $mnow = ("июль"); break;
            case "08": $mnow = ("август"); break;
            case "09": $mnow = ("сентябрь"); break;
            case "10": $mnow = ("октябрь"); break;
            case "11": $mnow = ("ноябрь"); break;
            case "12": $mnow = ("декабрь"); break;
        }?>
        &nbsp месяц:
        <select name=mtime class=text>
        <?
        if (isset($_POST['mtime']))
            echo "<option value='".$_POST['mtime']."' checked>".$_POST['mtime']."</option>";
        else
            echo "<option value='$mnow' checked>$mnow</option>";
        $i=1;
        foreach ($mas2 as $var => $val)
            {
            echo "<option value='$val'>$val</option>";
            $i++;
            }
        ?>
        </select>

    Jureth, 07 Апреля 2011

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

    +162

    1. 1
    2. 2
    foreach(split(',', '101,102,150,1351,2135,22153,351,15321,5351,235') as $key => $val)
    	$tmparray[] = $val;

    разбиваем строку в массив )))

    pes, 05 Апреля 2011

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

    +162

    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
    public function Showday($id)
    	{
    		//echo $id;exit;
    		if($id==1)
    		{
    		$day ='Monday';
    		}
    		elseif($id==2)
    		{
    		$day ='Tuesday';
    		}
    		elseif($id==3)
    		{
    		$day ='Wednesday';
    		}
    		elseif($id==4)
    		{
    		$day ='Thursday';
    		}
    		elseif($id==5)
    		{
    		$day ='Friday';
    		}
    		
    	    return $day;
    	}	
    	
    	
    	public function Showdayno($id)
    	{
    		//echo $id;exit;
    		if($id=='Monday')
    		{
    		$day ='1';
    		}
    		elseif($id=='Tuesday')
    		{
    		$day ='2';
    		}
    		elseif($id=='Wednesday')
    		{
    		$day ='3';
    		}
    		elseif($id=='Thursday')
    		{
    		$day ='4';
    		}
    		elseif($id=='Friday')
    		{
    		$day ='5';
    		}
    		
    	    return $day;
    	}

    Вот такой код попался в ZF проекте, написанном индусами.

    gerra, 05 Апреля 2011

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

    +162

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    $is_active = true;
           try
            {
                $is_active = $this->getIsActive($this->pk_id, true);
            }
            catch (DBModelException $e)
            {
                $is_active = false;
            }

    Довольно хитрый способ проверить является ли объект новым или уже присутствует в базе (название переменной, кстати, тоже крутое).
    Если объект новый, то при обращении к this->pk_id будет брошен DbModelException, который бросается при доступе к несуществующим свойствам объекта. Подразумевается, что несохранённый в базе объект не имеет первичного ключа.

    ilovephp, 04 Апреля 2011

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