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

    +62

    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
    for($i=0; $i<strlen($input); $i++)
        {
          $ip=$input{$i};
          $op='';
             
          if ($intag)
          {
              if ($ip=="=") $op="=3D";
              else $op= $ip;
          }
          else
          {
              if ($ip=="\"") $op='"';//'
              else if ($ip=="&") $op="&";
              else if ($ip=="'") $op="'";
              else $op= $ip;
          }
    
    
          if ((strlen($line)+strlen($op))>=$line_max)
          {
              $output.=$line.'='.$eol;
              //if ($intag) $output.=$line.'='.$eol;
              //else  $output.=$line.$eol;
              $line='';
          }
          $line.=$op;
    
          if($ip=='<')
              $intag=true;
          else if ($ip=='>')
              $intag=false;
        }

    Заголовки у письма отфильтрованы... Всё «путём» катимся дальше...

    nethak, 29 Мая 2012

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

    +67

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    preg_match('/(\d+)-(\d+)-(\d+)/i', date('d-m-Y'), $match);
    ob_start();
    echo (($match[1] == 30 || $match[1] == 31)?'01':(($match[2] <= 10)?'0':'').''.(++$match[1])).'.'; 
    echo ((!$match[2][1])?'0':''); 
    echo (($match[1] == 30 || $match[1] == 31)?++$match[2]:$match[2]); 
    echo '.'.$match[3];
    $rdate = ob_get_contents();
    ob_end_clean();

    Досталось в наследство...
    По алгоритму $rdate должна содержать текущее число следующего месяца в формате date('d.m.Y'). Мало того, что способ означивания переменной чрезвычайно необычен, код оформлен безобразно, так оно еще и не работает!
    На 29.05.2012 выдает "030.6.2012"

    domaster, 29 Мая 2012

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

    +75

    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
    if (ereg("^/products/([0-9]+)/$",$dn,$m)){
        $block_id = $m[1];
        $dn_page = "/products/";
    }
    
    if (ereg("^/products/([-a-z0-9_\.]+)/$",$dn,$m)){
        $block_alias = $m[1];
        $dn_page = "/products/";
    }
    
    if (ereg("^/articles/([0-9]+)/$",$dn,$m)){
        $block_id = $m[1];
        $dn_page = "/articles/";
    }
    
    if (ereg("^/news/([0-9]+)/$",$dn,$m)){
        $block_id = $m[1];
        $dn_page = "/news/";
    }
    
    if (ereg("^/products/([0-9]+)/([0-9]+)/$",$dn,$m)){
        $block_id = $m[1];
        $product_id = $m[2];
        $dn_page = "/products_detail/";
    }
    
    if (ereg("^/products/([-a-z0-9_\.]+)/([-a-z0-9_\.]+)/$",$dn,$m)){
        $block_alias = $m[1];
        $product_alias = $m[2];
        $dn_page = "/products_detail/";
    }
    // дальше начинается ад, не для слабонервных

    Я не буду показывать остальной код и рассказывать, что html в php пихать не красиво, ведь все мы индивидуальны и пишем как хотим. =)
    Кроме всего прочего, человек видимо очень стар и использует давно устаревшую функцию ereg, которая в версии 5.3.0 не имеет силы.
    На эту тему можно пофилософствовать и развести холивар, но мы же разумные люди и те кто пишет комментарии высшие программисты,
    ибо их слово это закон. По крайней мере вы так думаете)

    oooZinka, 29 Мая 2012

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

    +68

    1. 1
    2. 2
    3. 3
    4. 4
    ...... HTML .....
    if(isset($_GET["page"])){ $page = $_GET["page"].".php"; echo $_GET['page'];} else { $page = "main.php"; }
    if(file_exists("./pages/$page")){ include "./pages/$page"; }else{ include "./pages/404.php"; } 
    ...... HTML .....

    Говно сайт http://lovegay.su/

    good_web_master, 28 Мая 2012

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

    +77

    1. 1
    2. 2
    3. 3
    4. 4
    if ($id<0)
    {
      $id=intval(str_replace("-","","$id"));   
    }

    Пацаны пошли самым очевидным путем. Мозгов умножить $id на -1 или использовать abs (), конечно же, не хватило.

    T_ENGINE, 28 Мая 2012

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

    +66

    1. 1
    2. 2
    3. 3
    4. 4
    function EchoForum( $var ){
    	return true;
    	echo $var.'<BR>';
    }

    Из модуля форума...

    Мартин, 27 Мая 2012

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

    +63

    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
    if (!$dt) $dt = date("Ymd");
    
                    if ($dt) {
                        $dt_week_day = (int)date("w",
                                                 mktime(0, 0, 0, substr($dt, 4, 2), substr($dt, 6, 2), substr($dt, 0, 4)));
    
                        if ($datefrom && $dateto && $dt >= $datefrom && $dt <= $dateto && !$weekday1 && !$weekday2 && !$weekday3 && !$weekday4 && !$weekday5 && !$weekday6 && !$weekday7) $ok = 1;
                        if (!$datefrom && !$dateto && $permanent == "on" && !$weekday1 && !$weekday2 && !$weekday3 && !$weekday4 && !$weekday5 && !$weekday6 && !$weekday7) $ok = 1;
                        if ($datefrom && !$dateto && $dt <= $datefrom) $ok = 1;
    
                        if (!$datefrom && !$dateto && $permanent == "on" && $weekday1 > 0 && $dt_week_day == 1) $ok = 1;
                        if (!$datefrom && !$dateto && $permanent == "on" && $weekday2 > 0 && $dt_week_day == 2) $ok = 1;
                        if (!$datefrom && !$dateto && $permanent == "on" && $weekday3 > 0 && $dt_week_day == 3) $ok = 1;
                        if (!$datefrom && !$dateto && $permanent == "on" && $weekday4 > 0 && $dt_week_day == 4) $ok = 1;
                        if (!$datefrom && !$dateto && $permanent == "on" && $weekday5 > 0 && $dt_week_day == 5) $ok = 1;
                        if (!$datefrom && !$dateto && $permanent == "on" && $weekday6 > 0 && $dt_week_day == 6) $ok = 1;
                        if (!$datefrom && !$dateto && $permanent == "on" && $weekday7 > 0 && $dt_week_day == 0) $ok = 1;
    
                        if ($datefrom && $dateto && $dt >= $datefrom && $dt <= $dateto && !$permanent && $weekday1 > 0 && $dt_week_day == 1) $ok = 1;
                        if ($datefrom && $dateto && $dt >= $datefrom && $dt <= $dateto && !$permanent && $weekday2 > 0 && $dt_week_day == 2) $ok = 1;
                        if ($datefrom && $dateto && $dt >= $datefrom && $dt <= $dateto && !$permanent && $weekday3 > 0 && $dt_week_day == 3) $ok = 1;
                        if ($datefrom && $dateto && $dt >= $datefrom && $dt <= $dateto && !$permanent && $weekday4 > 0 && $dt_week_day == 4) $ok = 1;
                        if ($datefrom && $dateto && $dt >= $datefrom && $dt <= $dateto && !$permanent && $weekday5 > 0 && $dt_week_day == 5) $ok = 1;
                        if ($datefrom && $dateto && $dt >= $datefrom && $dt <= $dateto && !$permanent && $weekday6 > 0 && $dt_week_day == 6) $ok = 1;
                        if ($datefrom && $dateto && $dt >= $datefrom && $dt <= $dateto && !$permanent && $weekday7 > 0 && $dt_week_day == 0) $ok = 1;
    
    //               if($ok==0)continue;
    
                    }

    shmaltorhbooks, 25 Мая 2012

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

    +71

    1. 1
    2. 2
    3. 3
    $separator = '';
    for( $i = 0; $i < 136; $i++ ) { $separator .= '—'; }
    $sql_compile .= htmlspecialchars( $data ) . "\n" . $separator . "\n";

    Для вывода в html документе... Видимо <hr /> вдруг перестал работать.
    * Из ряда скорее извращений, нежели — «Г».

    nethak, 25 Мая 2012

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

    +72

    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
    //1. файл
    ...
    else if ($elem->tagName == "Error") {
    		$errorCode = trim($elem->getElementsByTagName("Code")->item(0)->textContent);
    		$errorText = trim($elem->getElementsByTagName("Text")->item(0)->textContent);
    
    		var_dump('Fuck!!! Some Error:',$errorCode,$errorText);						
    }
    ...
    
    //2. файл, после получения результатов
    ...
    if(empty($result)){	
    	var_dump($sql);
    	die('Page fucking dead!!!!!');
    }
    ...
    
    //2. файл, 
    ...
    if(!file_exists($filePath)){	
    	var_dump('No file found???!!! Where if fucking CLASS file???!!!', $filePath);
    	return false;
    }
    ...
    
    //3. файл, 
    ...
    if (empty($fields['id'])){
    	var_dump('AAAAAAAAA. No ID again!!!', $fields, $sql);
    	return false;
    }
    ...
    
    //4. файл, 
    ...
    if (!$error){
    	if($this->debug)var_dump('Yeeeees!!! Work fine ^_^');
    	return true;
    }
    ...

    Наткнулся на один проектик. Не совсем говнокод, но программер был видать оочень емоциональный :)

    Edd, 25 Мая 2012

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

    +69

    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
    //проверка фамилии
    if ($tmp['fam'] == ""):
     $_SESSION["er_mes_registr"] = "Не заполнено поле `Фамилия`.";
     header ("Location: /register/");
     die();
    endif;
    if (strlen($tmp['fam'])>20):
     $_SESSION["er_mes_registr"] = "Длина фамилии не может быть более 20 букв.";
     header ("Location: /register/");
     die();
    endif; 
    
    //проверка имени
    if ($tmp['name'] == ""):
     $_SESSION["er_mes_registr"] = "Не заполнено поле `Имя`.";
     header ("Location: /register/");
     die();
    endif;
    if (strlen($tmp['name'])>20):
     $_SESSION["er_mes_registr"] = "Длина имени не может быть более 20 букв.";
     header ("Location: /register/");
     die();
    endif; 
    
    //проверка email
    if ($tmp['email'] == ""):
     $_SESSION["er_mes_registr"] = "E-mail не может быть пустым!";
     header ("Location: ".$_SERVER['HTTP_REFERER']);
     die();
    endif;
    if (!ereg("^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,4}\$",$tmp['email'])):
     $_SESSION["er_mes_registr"] = "Неверно указан e-mail!";
     header ("Location: ".$_SERVER['HTTP_REFERER']);
     die();
    endif;

    Правильная валидация...

    MAXakaWIZARD, 25 Мая 2012

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