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

    +163

    1. 1
    if(!($_POST[$_POST[parameter_value]])){$parameter_value=" ";}else{$parameter_value=$_POST[$_POST[parameter_value_cash]];}

    shl, 15 Декабря 2011

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

    +161

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    <?
    if(!file_exists($abs_path)){
      $new = "Y";
      // ...
    }
    //...
    if(strlen($new) > 0  ){
    // ...
    ?>

    Угадай CMS по коду!

    belukov, 14 Декабря 2011

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

    +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
    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
    class PAGING
    {
      var $sql,$records,$pages;
      var $page_no,$total,$limit,$first,$previous,$next,$last,$start,$end;
      function PAGING($sql,$records=9,$pages=5)
      {   global $mysqli;
        if($pages%2==0) $pages++;
        $res = $mysqli->query($sql);
        $sqlquery++;
        $total=mysqli_num_rows($res);
        $page_no=isset($_GET["p"])?$_GET["p"]:1;
        $limit=($page_no-1)*$records;
        $sql.=" limit $limit,$records";
        $first=1;
        $previous=$page_no>1?$page_no-1:1;
        $next=$page_no+1;
        $last=ceil($total/$records);
        if($next>$last)
          $next=$last;
        $start=$page_no;
        $end=$start+$pages-1;
        if($end>$last)
          $end=$last;
        if(($end-$start+1)<$pages)
        {
          $start-=$pages-($end-$start+1);
          if($start<1)
            $start=1;
        }
        if(($end-$start+1)==$pages)
        {
          $start=$page_no-floor($pages/2);
          $end=$page_no+floor($pages/2);
          while($start<$first)
          {
            $start++;
            $end++;
          }
          while($end>$last)
          {
            $start--;
            $end--;
          }
        }
        $this->sql=$sql;
        $this->records=$records;
        $this->pages=$pages;
        $this->page_no=$page_no;
        $this->total=$total;
        $this->limit=$limit;
        $this->first=$first;
        $this->previous=$previous;
        $this->next=$next;
        $this->last=$last;
        $this->start=$start;
        $this->end=$end;
      }
      function show_paging($url,$params=""){...}
    }

    Вот так вот товарищ пейджинг организует ООО)

    aleXoid, 13 Декабря 2011

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

    +146

    1. 1
    http://chechnya.gov.ru/page.php?day=102&month=13&year=2222

    Ещё можете год убрать, и посмотрите как вывалится ошибка mktime()
    XDDD

    Мне кажется этот сайт по бумагам стоит не менее чем 1ккк руб.

    vkontakte, 13 Декабря 2011

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

    +153

    1. 1
    'email'   => array('/^[-_a-z0-9\'+*$^&%=~!?{}]++(?:\.[-_a-z0-9\'+*$^&%=~!?{}]+)*+@(?:(?![-.])[-a-z0-9.]+(?<![-.])\.[a-z]{2,6}|\d{1,3}(?:\.\d{1,3}){3})(?::\d++)?$/iD', 'Введите правильный e-mail, пожалуйста.')

    Вот такая проверка валидности email

    Sulik78, 13 Декабря 2011

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

    +171

    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
    .............
    try {
          $good = $admin->isest ? true : false;
          if(!$good) throw new adminException('Ошибка!');
    }catch (Exception $e){
    {
          try {
            if($admin->isnet) throw new adminException('Админа нет!');
          }catch (adminException $e){
               echo $e->getMessage();
          {      
    }
    ................

    От создателя Говнокод #8761.

    Товарищи начал юзать исключения.

    Razban_Guestov, 12 Декабря 2011

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

    +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
    mysql_connect("localhost", "root", "");
    mysql_select_db("vse_vmeste");
    $data = mysql_query("SELECT * FROM users WHERE user_id='" . $_COOKIE['id'] . "'");
    
    if(isset($_GET['check_code'])) {
    if($data['check_code'] == $_GET['check_code']) {
    // Если код правильный, выполняем соответствующие действия
    }
    else {
    print "<script type=\"text/javascript\">alert('Ошибка при активации: неверный код потверждения');</script>";
    }
    }
    else {
    header("Location: index.php");
    }

    "Я пишу скрипт подтверждения электропочты. Попробовал протестировать (мне он должен был сказать, что код правильный), но выводится ошибка неверного кода. Где здесь ошибка?".
    С Гугл ВиО (http://otvety.google.ru/otvety/thread?tid=78a8196f16cdb481)

    MyNameIsWinner, 11 Декабря 2011

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

    +170

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    function draw_text() {
    // ***
    // Здесь код, генерирующий изображение для текста капчи
    // $im_text - это его дескриптор
    // Но самое интересное в конце ))
    // ***
    return $im_text;
    imagedestroy($im_text); 
    }

    MODx Evolution 1.0.5, фрагмент кода, отвечающего за генерацию капчи

    shlyapa, 11 Декабря 2011

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

    +159

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    // Strip out the embedded timestamp
    if ( ! preg_match("/(\d+TS--->)/", $cache, $match))
    {
      return FALSE;
    }
    
    // Has the file expired? If so we'll delete it.
    if (time() >= trim(str_replace('TS--->', '', $match['1'])))
    {
    ...

    CodeIgniter → System → Core → Output.php
    Это чтение временной метки в кэш-файле. Почему бы в регулярке в "карман" не взять только \d+?

    Andretti, 10 Декабря 2011

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

    +157

    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
    private function setFxFF()
    	{
    		if(!isset($_GET["body"]))return;
    		if(preg_match('/^[\dA]{4,100}$/',$_GET["body"]) == 0)return;
    		
    		$str = $_GET["body"];$pos = 0;
    		$c=0;
    		do
    		{//$c++;if($c>10)return;
    		
    			$s = substr($str,$pos,4);$pos+=4;//echo "<br>$pos<br>";
    			if(strlen($s) < 4)return;
    			
    			$ppos = substr($s,0,3);$ppos = intval($ppos);
    			$val = substr($s,3,1);
    			
    			if($ppos == 0)continue;
    			
    			if($ppos <= 99)$col = 'fa';
    			elseif($ppos >= 100 && $ppos <= 199)$col = 'fb';
    			elseif($ppos >= 200 && $ppos <= 299)$col = 'fc';
    			elseif($ppos >= 300 && $ppos <= 399)$col = 'fd';
    			elseif($ppos >= 400 && $ppos <= 499)$col = 'fe';
    			if(!isset($col))return;
    			
    			switch($col)
    			{
    				case 'fb':$ppos -= 100;break;
    				case 'fc':$ppos -= 200;break;
    				case 'fd':$ppos -= 300;break;
    				case 'fe':$ppos -= 400;break;
    			}
    			
    			$fStr = $this->getUserVal($col);//echo $ppos;
    			//$pos = $ppos; //$this->get_F_pos($body1);
    			$fStr = $this->replace_F_str($fStr,$ppos,$val);//echo $fStr;
    			//echo '<br>'.$fStr.'<br>';
    			$this->setUserVal($col,$fStr,'str');
    			unset($col);
    		}while(true);
    	}

    kyzi007, 09 Декабря 2011

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