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

    +170

    1. 1
    2. 2
    $sql = "DELETE FROM `".$this->tbl_name."` WHERE 1=1;";
    mysql_query($sql);

    Вот так говнокодеры одной веб-конторки делают TRUNCATE)

    genghis, 29 Декабря 2010

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

    +157

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    <?php
    //............
    if (!eregi("^([0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-wyz][a-z](fo|g|l|m|mes|o|op|pa|ro|seum|t|u|v|z)?)$", $_POST[mail]))
    {
    echo"Адрес E-mail,веден неверно.<br /><br />";
    echo"Вы хотите <a href=\"index.php\">Повторить</a>";
    exit;
    }
    
    //............
    ?>

    Зачем ввобще придумали preg_match ?

    iNeeXT, 29 Декабря 2010

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

    +158

    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
    @s_sort	= sort { @{$a}[11] <", @{$b}[11] } @s;
    @s	= sort { @{$a}[11] <", @{$b}[11] } @s_sort;
    @s_sort	= sort { @{$a}[11] <", @{$b}[11] } @s;
    for($i = 0; $i < $f_num; $i++){
      $loop_data = ();
      for($m = 1; $m <= $std; $m++){
        if($spcs[$spcs_indx[$s_sort[$m][2]]][9] == $i && $s_sort[$m][1] <> ''){
          $row_data;
          $row_data{name}	= $_sort[$m][1];
          $row_data{ball}	= round($s_sort[$m][11],2);
          $row_data{krs}	= $s_sort[$m][3];
          $row_data{grp}	= $spcs[$spcs_indx[$s_sort[$m][2]]][2]."-".substr(($f_k_y - $s_sort[$m][3]),2,2)."-".$s_sort[$m][4];
          array_push($loop_data,$row_data);
         }
       }

    Продолжение http://govnokod.ru/5072 . Для меня остались загадкой первые три строчки. Они, к тому же, еще и не работают.

    xandrster, 29 Декабря 2010

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

    +158

    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
    /*
    -----------------------------------------------------------------
    Формируем Карту Сайта и записываем в Кэш
    -----------------------------------------------------------------
    */
    function sitemap() {
        global $rootpath, $realtime, $set;
        $links_count = 140;
        $file = $rootpath . 'files/cache/sitemap.dat';
        if (file_exists($file) && filemtime($file) > ($realtime - 604800)) {
            // Считываем ссылки из Кэша
            return file_get_contents($file);
        } else {
            $out = '';
            // Карта Форума
            $req = mysql_query("SELECT * FROM `forum` WHERE `type` = 'r'");
            if (mysql_num_rows($req)) {
                $out .= '<b>Forum Map</b>' . "\r\n";
                while ($res = mysql_fetch_assoc($req)) {
                    $count = mysql_result(mysql_query("SELECT COUNT(*) FROM `forum` WHERE `refid` = '" . $res['id'] . "' AND `type` = 't' AND `close` != '1'"), 0);
                    if ($count) {
                        $text = html_entity_decode($res['text']);
                        $text = mb_substr($text, 0, 30);
                        // Подсчитываем число блоков ссылок
                        $pages = ceil($count / $links_count);
                        if($pages > 1){
                            for($i = 0; $i < $pages; $i++){
                                $out .= '<br /><a href="' . $set['homeurl'] . '/sitemap/forum.php?id=' . $res['id'] . '&amp;p=' . $i . '">' . functions::checkout($text) . ' (part ' . ($i + 1) . ')</a>' . "\r\n";
                            }
                        } else {
                            $out .= '<br /><a href="' . $set['homeurl'] . '/sitemap/forum.php?id=' . $res['id'] . '">' . functions::checkout($text) . '</a>' . "\r\n";
                        }
                    }
                }
            }
            // Карта Библиотеки
            $req = mysql_query("SELECT * FROM `lib` WHERE `type` = 'cat' AND `ip` = '0'");
            if (mysql_num_rows($req)) {
                $out .= '<br /><br /><b>Library Map</b>' . "\r\n";
                while ($res = mysql_fetch_assoc($req)) {
                    $text = html_entity_decode($res['text']);
                    $text = mb_substr($text, 0, 30);
                    $out .= '<br /><a href="../library/index.php?id=' . $res['id'] . '">' . functions::checkout($text) . '</a>' . "\r\n";
                }
            }
            if (!empty($out)) {
                // записываем Кэш ссылок
                if (!file_put_contents($file, $out)) {
                    return 'Cache file write error!';
                }
                return $out;
            } else {
                return false;
            }
        }
    }
    
    /*
    -----------------------------------------------------------------
    Показываем карту сайта
    -----------------------------------------------------------------
    */
    if (!defined('_IN_JOHNCMS')) {
        define('_IN_JOHNCMS', 1);
        require('../incfiles/core.php');
        require('../incfiles/head.php');
        echo '<div class="menu">' . sitemap() . '</div>';
        require('../incfiles/end.php');
    } else {
            echo '<div class="menu"><div class="sitemap">' . sitemap() . '</div></div>';
    }

    JohnCMS 4, sitemap/index.php
    Этот движок, кстати, почти самый распространнённый в wap

    NadiaVita, 28 Декабря 2010

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

    +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
    /*
        -----------------------------------------------------------------
        Маскировка ссылок в тексте
        -----------------------------------------------------------------
        */
        function antilink($var) {
            $var = preg_replace('~\\[url=(https?://.+?)\\](.+?)\\[/url\\]|(https?://(www.)?[0-9a-z\.-]+\.[0-9a-z]{2,6}[0-9a-zA-Z/\?\.\~&amp;_=/%-:#]*)~', '###', $var);
            $var = strtr($var, array (
                '.ru' => '***',
                '.com' => '***',
                '.biz' => '***',
                '.cn' => '***',
                '.in' => '***',
                '.net' => '***',
                '.org' => '***',
                '.info' => '***',
                '.mobi' => '***',
                '.wen' => '***',
                '.kmx' => '***',
                '.h2m' => '***'
            ));
    
            return $var;
        }

    JohnCMS 4, incfiles/classes/functions.php

    NadiaVita, 28 Декабря 2010

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

    +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 checkout($str, $br = 0, $tags = 0) {
        $str = htmlentities($str, ENT_QUOTES, 'UTF-8');
    
        if ($br == 1)
            $str = nl2br($str);
        elseif ($br == 2)
            $str = str_replace("\r\n", ' ', $str);
    
        if ($tags == 1)
            $str = tags($str);
        elseif ($tags == 2)
            $str = notags($str);
        $str = strtr($str, array (
            chr(0)=> '',
            chr(1)=> '',
            chr(2)=> '',
            chr(3)=> '',
            chr(4)=> '',
            chr(5)=> '',
            chr(6)=> '',
            chr(7)=> '',
            chr(8)=> '',
            chr(9)=> '',
            chr(10)=> '',
            chr(11)=> '',
            chr(12)=> '',
            chr(13)=> '',
            chr(14)=> '',
            chr(15)=> '',
            chr(16)=> '',
            chr(17)=> '',
            chr(18)=> '',
            chr(19)=> '',
            chr(20)=> '',
            chr(21)=> '',
            chr(22)=> '',
            chr(23)=> '',
            chr(24)=> '',
            chr(25)=> '',
            chr(26)=> '',
            chr(27)=> '',
            chr(28)=> '',
            chr(29)=> '',

    JohnCMS 4, incfiles/func.php

    NadiaVita, 28 Декабря 2010

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

    +160

    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
    /*
                    -----------------------------------------------------------------
                    Список топиков
                    -----------------------------------------------------------------
                    */
                    $total = mysql_result(mysql_query("SELECT COUNT(*) FROM `forum` WHERE `type`='t' AND `refid`='$id'" . ($rights >= 7 ? '' : " AND `close`!='1'")), 0);
                    if ($user_id && !$ban['1'] && !$ban['11']) {
                        // Кнопка создания новой темы
                        echo '<div class="gmenu"><form action="index.php?act=nt&id=' . $id . '" method="post"><input type="submit" value="' . $lng_forum['new_topic'] . '" /></form></div>';
                    }
                    if ($total) {
                        $req = mysql_query("SELECT * FROM `forum` WHERE `type`='t'" . ($rights >= 7 ? '' : " AND `close`!='1'") . " AND `refid`='$id' ORDER BY `vip` DESC, `time` DESC LIMIT $start, $kmess");
                        while ($res = mysql_fetch_assoc($req)) {
                            if($res['close'])
                                echo '<div class="rmenu">';
                            else
                                echo $i % 2 ? '<div class="list2">' : '<div class="list1">';
                            $nikuser = mysql_query("SELECT `from` FROM `forum` WHERE `type` = 'm' AND `close` != '1' AND `refid` = '" . $res['id'] . "' ORDER BY `time` DESC LIMIT 1");
                            $nam = mysql_fetch_assoc($nikuser);
                            $colmes = mysql_query("SELECT COUNT(*) FROM `forum` WHERE `type`='m' AND `refid`='" . $res['id'] . "'" . ($rights >= 7 ? '' : " AND `close` != '1'"));
                            $colmes1 = mysql_result($colmes, 0);
                            $cpg = ceil($colmes1 / $kmess);
                            $np = mysql_result(mysql_query("SELECT COUNT(*) FROM `cms_forum_rdm` WHERE `time` >= '" . $res['time'] . "' AND `topic_id` = '" . $res['id'] . "' AND `user_id`='$user_id'"), 0);
                            // Значки
                            $icons = array(
                                ($np ? (!$res['vip'] ? '<img src="../theme/' . $set_user['skin'] . '/images/op.gif" alt=""/>' : '') : '<img src="../theme/' . $set_user['skin'] . '/images/np.gif" alt=""/>'),
                                ($res['vip'] ? '<img src="../theme/' . $set_user['skin'] . '/images/pt.gif" alt=""/>' : ''),
                                ($res['realid'] ? '<img src="../theme/' . $set_user['skin'] . '/images/rate.gif" alt=""/>' : ''),
                                ($res['edit'] ? '<img src="../theme/' . $set_user['skin'] . '/images/tz.gif" alt=""/>' : '')
                            );
                            echo functions::display_menu($icons, ' ', ' ');
                            echo '<a href="index.php?id=' . $res['id'] . '">' . $res['text'] . '</a> [' . $colmes1 . ']';
                            if ($cpg > 1) {
                                echo '<a href="index.php?id=' . $res['id'] . '&page=' . $cpg . '"> >></a>';
                            }
                            echo '<div class="sub">';
                            echo $res['from'];
                            if (!empty($nam['from'])) {
                                echo ' / ' . $nam['from'];
                            }
                            $vrp = $res['time'] + $set_user['sdvig'] * 3600;
                            echo ' <span class="gray">(' . date("d.m.y / H:i", $vrp) . ')</span></div></div>';
                            ++$i;
                        }
                        unset($_SESSION['fsort_id']);
                        unset($_SESSION['fsort_users']);
                    } else {
                        echo '<div class="menu"><p>' . $lng_forum['topic_list_empty'] . '</p></div>';
                    }

    JohnCMS 4, forum/index.php
    Автор мало того, что не знает о шаблонизации, но и незнает ещё о вреде запросов в цикле

    NadiaVita, 28 Декабря 2010

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

    +156

    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
    /*
    -----------------------------------------------------------------
    Автозагрузка Классов
    -----------------------------------------------------------------
    */
    spl_autoload_register('autoload');
    function autoload($name) {
        global $rootpath;
        $file = $rootpath . 'incfiles/classes/' . $name . '.php';
    
        if (file_exists($file))
            require_once($file);
    }
    
    /*
    -----------------------------------------------------------------
    Инициализируем Ядро системы
    -----------------------------------------------------------------
    */
    $core = new core() or die('Error: Core System');
    
    /*
    -----------------------------------------------------------------
    Получаем системные переменные
    -----------------------------------------------------------------
    */
    $ip = $core->ip;                         // Адрес IP
    $agn = $core->user_agent;                // User Agent
    $set = $core->system_settings;           // Системные настройки
    $realtime = $core->system_time;          // Системное время с учетом сдвига
    $lng = $core->language_phrases;          // Фразы выбранного языка
    $is_mobile = functions::mobile_detect(); // Определение мобильного браузера
    $home = $set['homeurl'];                 // Домашняя страница
    
    /*
    -----------------------------------------------------------------
    Получаем пользовательские переменные
    -----------------------------------------------------------------
    */
    $user_id = $core->user_id;        // Идентификатор пользователя
    $rights = $core->user_rights;     // Права доступа
    $datauser = $core->user_data;     // Все данные пользователя
    $login = $datauser['name'];       // Ник пользователя
    $set_user = $core->user_settings; // Пользовательские настройки
    $ban = $core->user_ban;           // Бан
    $kmess = $set_user['kmess'] > 4 && $set_user['kmess'] < 99 ? $set_user['kmess'] : 10;

    JohnCMS 4, incfiles/core.php

    NadiaVita, 28 Декабря 2010

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

    +158

    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
    $mazovia[18];
    	$iso[18];
    
    	$mazovia[0]  = chr(134);$iso[0]=chr(177);		//a~
    	$mazovia[1]  = chr(143);$iso[1]=chr(161);		//A~
    	$mazovia[2]  = chr(141);$iso[2]=chr(230);		//c~
    	$mazovia[3]  = chr(149);$iso[3]=chr(198);		//C~
    	$mazovia[4]  = chr(145);$iso[4]=chr(234);		//e~
    	$mazovia[5]  = chr(144);$iso[5]=chr(202);		//E~
    	$mazovia[6]  = chr(146);$iso[6]=chr(179);		//l~
    	$mazovia[7]  = chr(156);$iso[7]=chr(163);		//L~
    	$mazovia[8]  = chr(164);$iso[8]=chr(241);		//n~
    	$mazovia[9]  = chr(165);$iso[9]=chr(209);		//N~
    	$mazovia[10] = chr(162);$iso[10]=chr(243);		//o~
    	$mazovia[11] = chr(163);$iso[11]=chr(211);		//O~
    	$mazovia[12] = chr(158);$iso[12]=chr(182);		//s~
    	$mazovia[13] = chr(152);$iso[13]=chr(166);		//S~
    	$mazovia[14] = chr(166);$iso[14]=chr(188);		//z~
    	$mazovia[15] = chr(160);$iso[15]=chr(172);		//Z~
    	$mazovia[16] = chr(167);$iso[16]=chr(191);		//z|
    	$mazovia[17] = chr(161);$iso[17]=chr(175);		//Z|
           
            $strmazovia="";
    	$strIso="";
    	for ($i=0;$i<=17;$i++){
    		$strmazovia=$strmazovia."\\".$mazovia[$i];
    		$strIso= $strIso."\\".$iso[$i];
    	}
    
    
    	function convert($str){
    		global $strmazovia;
    		global $strIso;
    	        return StrTr($str,$strmazovia,$strIso);
    	}

    xaoc, 28 Декабря 2010

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

    +173

    1. 1
    2. 2
    3. 3
    function int2float($i) {
        return (string) $i . '.00';
    }

    Vyacheslav, 28 Декабря 2010

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