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

    +167

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    function mysql_escape($s)
    {
    	if (preg_match('/\b(select|union|update|replace|delete|create)\b/ui', $s))
    		return null;
    
    	return mysql_escape_string($s);
    }

    SQL Injection не пройдёт!

    vsu, 14 Мая 2011

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

    +168

    1. 1
    <? echo convert($current_order['post_price']-1+1, 'CNY', $order_currency); ?>

    цена плюсминусадин

    Axell, 14 Мая 2011

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

    +146

    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
    function hsl2rgb($h, $s, $v) {
        if($s == 0) { //если насыщенность цвета равно 0, то мы имеем дело с оттенком серого код которого и вычисляем умножая на 255
            $r = $g = $b = $v * 255;
        } else {
            $var_H = $h * 6;
            $var_i = floor( $var_H );
            $var_1 = $v * ( 1 - $s );
            $var_2 = $v * ( 1 - $s * ( $var_H - $var_i ) );
            $var_3 = $v * ( 1 - $s * (1 - ( $var_H - $var_i ) ) );
    
            if      ($var_i == 0) { $var_R = $v     ; $var_G = $var_3  ; $var_B = $var_1 ; }
            elseif  ($var_i == 1) { $var_R = $var_2 ; $var_G = $v      ; $var_B = $var_1 ; }
            elseif  ($var_i == 2) { $var_R = $var_1 ; $var_G = $v      ; $var_B = $var_3 ; }
            elseif  ($var_i == 3) { $var_R = $var_1 ; $var_G = $var_2  ; $var_B = $v     ; }
            elseif  ($var_i == 4) { $var_R = $var_3 ; $var_G = $var_1  ; $var_B = $v     ; }
            else                  { $var_R = $v     ; $var_G = $var_1  ; $var_B = $var_2 ; }
    
            $r = $var_R * 255;
            $g = $var_G * 255;
            $b = $var_B * 255;
        }
        return array($r, $g, $b);
    }

    Lure Of Chaos, 14 Мая 2011

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

    +147

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    function write($pole,$table,$where,$order)
    {
      if ($where) $where="WHERE ".$where;
      $query="SELECT $pole FROM $table $where $order";
      $result=mysql_query($query);

    с одного дружественного сайта

    Lure Of Chaos, 14 Мая 2011

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

    +168

    1. 1
    2. 2
    3. 3
    $new_array=array();
    foreach ($old_array as $k => $v)
        $new_array[$k] = $v;

    Таким образом чел создаёт копию массива...

    uni, 14 Мая 2011

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

    +159

    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
    function colorQuote($message) {
        global $tinyib, $mysql_posts_table, $mysql_database, $mysql_password, $mysql_username, $mysql_host;
        $message=str_replace("<", "<", $message);
        $message=str_replace("'", "'", $message);
        $message=str_replace("\n", "<br>\n", $message);
        $cd = getcwd();
        $lastSlash = 0;
        if (($lastSlash = strrpos($cd, '/')) === false)
        {
            if (($lastSlash = strrpos($cd, '\\')) === false)
            {
                $lastSlash = 0;
            }
        }
        $message_lines=explode("\n", $message);
        for($i=0; $i<count($message_lines); $i++) {
            if(preg_match("#^(\*|\+|-) .*#si", $message_lines[$i])) {
                if(!preg_match("#^(\*|\+|-) .*#si", $message_lines[$i-1]) && substr($message_lines[$i-1], 0, 4)!="<ul>" && substr($message_lines[$i-1], 0, 4)!="<li>"){
                    $message_lines[$i]="<ul>".preg_replace("#^(\*|\+|-) (.*)#si", "<li>\\2</li>", $message_lines[$i]);
                }
                $message_lines[$i]=preg_replace("#^(\*|\+|-) (.*)#si", "<li>\\2</li>", $message_lines[$i]);
                if(!preg_match("#^(\*|\+|-) .*#si", $message_lines[$i+1]) && substr($message_lines[$i+1], 0, 5)!="</ul>" && substr($message_lines[$i+1], 0, 4)!="<li>"){
                    $message_lines[$i].="</ul>";
                }
            }
            if(preg_match("|^[0-9]+\..*|si", $message_lines[$i])) {
                if(!preg_match("|^[0-9]+\..*|si", $message_lines[$i-1]) && substr($message_lines[$i-1], 0, 4)!="<ol>" && substr($message_lines[$i-1], 0, 4)!="<li>"){
                    $message_lines[$i]="<ol>".$message_lines[$i];
                }
                $message_lines[$i]=preg_replace("|[0-9]+\.(.*)|si", "<li>\\1</li>", $message_lines[$i]);
                if(!preg_match("|^[0-9]+\..*|si", $message_lines[$i+1]) && substr($message_lines[$i+1], 0, 5)!="</ol>" && substr($message_lines[$i+1], 0, 4)!="<li>"){
                    $message_lines[$i].="</ol>";
                }
            }
            $message_lines[$i]=preg_replace("|^>(.*)|is", "<span class=\"unkfunc\">>\\1</span>", $message_lines[$i]);
            if(preg_match("|^[\s]{4}.+$|si", $message_lines[$i])){
                $message_lines[$i]=preg_replace("|^[\s]{4}(.+)$|si", "<pre>\\1</pre>", $message_lines[$i]);
            }
        }
        $message=implode("\n", $message_lines);
        $message=preg_replace("|\*\*([^\*\*]+)\*\*|si", "<strong>\\1</strong>", $message);
        $message=preg_replace("|\*([^\*]+)\*|si", "<em>\\1</em>", $message);
        $message=preg_replace("|__([^__]+)__|si", "<span style='text-decoration: underline;'>\\1</span>", $message);
        $message=preg_replace("#(http://|ftp://|mailto:|irc:|news:)([^\s]+[^\s\.,?(!):;])#si", "<a href='\\1\\2'>\\1\\2</a>", $message);
        $message=preg_replace("|%%([^%%]+)%%|si", "<span class='spoiler'>\\1</span>", $message);
        $message=preg_replace("|`([^`]+)`|si", "<pre>\\1</pre>", $message);
        return $message;
    }

    Вставил почти целиком, только кусочек вырезал. PHP делает просто лютый пиздец!
    Откуда - сами догадаетесь.

    Skelet0n, 13 Мая 2011

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

    +159

    1. 1
    2. 2
    3. 3
    while ($row = @mysql_fetch_array($this->_sqlResult, $result_type)):
    	$return[] = $row;
    endwhile;

    1_and_0, 13 Мая 2011

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

    +163

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    $arItems = $arResult["ITEMS"] ;
    
    for($j=0; $j<count($arItems); $j++)
    {
       $p = rand(0, count($arItems)-1);
       $buf = $arItems[$j];
       $arItems[$j] = $arItems[$p];
       $arItems[$p] = $buf;
    }
    
    $arResult["ITEMS"] = $arItems;

    Своя реализация PHP функции shuffle ))

    govnomes, 13 Мая 2011

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

    +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
    class db {
        //...
        function query($sql) {
            //...
            if ($error_no) {
                display_error($error_no, $error_msg, $sql);
                throw new Exception('Error in query');
                return FALSE;
            }
            return $result;
        }
    
        function display_error($error_no, $error_msg, $sql) {
            //...
            exit;
        }
    
    }

    А я думай, какого ___ оно не перехватывается:).

    Lowezar, 12 Мая 2011

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

    +158

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    if (условие)
     echo 'FILE TO DELETE '.$file;
    }
    
    // затем делается
    
    if(условие)
     echo 'FILE TO DELETE '.$file;
     unlink($file);
    }

    ...и после запуска заметить, что скобочка закрывает не этот иф.

    hdkeeper, 12 Мая 2011

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