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

    +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
    /*Проверка авторизации*/
    if ($action == 'login') {
     if (($entlogin && $entpass) <> '') {
      $per = "SELECT * FROM ".$sql_dop."users";
      if(!mysql_query($per)) {
       $page = 'error';
       $id = '2,1,1';
      }
      $result = mysql_query($per);
      $qwe = 0;
      while ($row = mysql_fetch_row($result)) {
       if ($entlogin == $row[1] && md5($entpass) == $row[2]) {
        $qwe = 1;
    	$date = date("d m Y H:i:s");
    	$mmsec = microtime(msec);
    	$kod = md5($date.$row[0].$row[1].$row[2].$mmsec);
    
    	$does_into_sessions = "INSERT INTO ".$sql_dop."sessions(user,kod) VALUES ('$row[0]','$kod')";
    	if(!mysql_query($does_into_sessions)) {
    	error(3,1,1);
    	}				
    	setcookie('session_code', $kod);
    	$ubr = 1;
    	if ($row[10] == 2) {
    		$urb = 2;
    	}
    	if ($row[10] == 3) {
    		$urb = 2;
    	}
    	setcookie('userbar', $urb);
    	$session_code = $kod;
    	$page = '';
       }
      }
     } else {
       $page = 'error';
       $id = '5,0,0';
    
     }
     if ($qwe == 0) {	
    	echo "<strong>Ошибка авторизации...</strong>";
    	echo "<meta http-equiv='refresh' content='1; url=index.php'>";
    	exit();
     }
    }

    Авторизация от старого программиста

    Amadey, 16 Июля 2011

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

    +175

    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
    <select name="d_diam" >
                                        <option value="" selected="selected"></option>
    <?php if ($d_diam == 0) { ?>
                                            <option value="1" ><?php echo "Радиус 13'"; ?></option>
                                            <option value="0" selected="selected"><?php echo "Радиус 12'"; ?></option>
                                            <option value="2"><?php echo "Радиус 14'"; ?></option>
                                            <option value="3"><?php echo "Радиус 15'"; ?></option>
                                            <option value="4"><?php echo "Радиус 16'"; ?></option>
                                            <option value="5"><?php echo "Радиус 17'"; ?></option>
                                            <option value="6"><?php echo "Радиус 18'"; ?></option>
                                            <option value="7"><?php echo "Радиус 19'"; ?></option>
                                            <option value="8"><?php echo "Радиус 20'"; ?></option>
                                            <option value="9"><?php echo "Радиус 21'"; ?></option>
                                            <option value="10"><?php echo "Радиус 22'"; ?></option>
                                            <option value="11"><?php echo "Радиус 23'"; ?></option>
                                            <option value="12"><?php echo "Радиус 24'"; ?></option>
    <?php } elseif ($d_diam == 1) { ?>
                                            <option value="1" selected="selected"><?php echo "Радиус 13'"; ?></option>
                                            <option value="0" ><?php echo "Радиус 12'"; ?></option>
                                            <option value="2"><?php echo "Радиус 14'"; ?></option>
                                            <option value="3"><?php echo "Радиус 15'"; ?></option>
                                            <option value="4"><?php echo "Радиус 16'"; ?></option>
                                            <option value="5"><?php echo "Радиус 17'"; ?></option>
                                            <option value="6"><?php echo "Радиус 18'"; ?></option>
                                            <option value="7"><?php echo "Радиус 19'"; ?></option>
                                            <option value="8"><?php echo "Радиус 20'"; ?></option>
                                            <option value="9"><?php echo "Радиус 21'"; ?></option>
                                            <option value="10"><?php echo "Радиус 22'"; ?></option>
                                            <option value="11"><?php echo "Радиус 23'"; ?></option>
                                            <option value="12"><?php echo "Радиус 24'"; ?></option>
    <?php } elseif ($d_diam == 2) { ?>

    ... и так 20 раз

    cybervantyz, 15 Июля 2011

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

    +154

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    $balans= round($balans[1],2);
    $balans = explode('.', $balans);
    $balans = $balans[0];
    $cents = isset($balans[1]) ? (int)$balans[1] : '00';
    $tmp=$balans."";
    $balans_s= '';
    for($i=0;$i<=strlen($tmp);$i++)
     if(($i-3*ceil($i/3))!=-2) $balans_s= $tmp[strlen($tmp)-$i].$balans_s;
     else $balans_s= $tmp[strlen($tmp)-$i]." ".$balans_s;
    $balans_s = trim($balans_s).'.'.$cents.'$';

    Аналог $balans_s = number_format($balans, 2, '.', ' ') . '$' со своим блэкджеком и шлюхами.

    alexx, 14 Июля 2011

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

    +153

    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
    $connect = $db->sql_query("SELECT `come_sid`, `come_time`, `come_ip`, `secret_type` FROM `".PREFIX."_gen[user]` WHERE `uid` = '" . $this->USER_UID . "';");
    $rowset = $db->sql_fetchrow();
    
    if( $connect == false ) {
    	$return = false;
    } else if( $rowset == false ) {
    	unset( $return );
    	$return = false;
    } else if( ( intval($rowset['come_time']) + intval($conf_safety["time_sess_adm"]) ) < time()) {
    	unset( $return );
    	$return = false;
    } else if( $rowset['come_ip'] != IPClient() ) {
    	unset( $return );
    	$return = false;
    } else if( $rowset['secret_type'] != secret_hash() ) {
    	unset( $return );
    	$return = false;
    } else if( $rowset['come_sid'] != SID ) {
    	unset( $return );
    	$return = false;
    } else {
    	unset( $return );
    	$return = true;
    }

    Бесполезные условия...

    nethak, 13 Июля 2011

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

    +174

    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
    <?php
    function htmlspecialchars($a) {
    	return htmlspecialchars($a);
    	return preg_replace('/</','<',htmlspecialchars($a));
            echo htmlspecialchars($a);
    }
    echo htmlspecialchars('<a href="http://">линка</a>');  // мы пришли к тому, 
    что заменили <a href="http://">линка</a>, 
    то есть оно выведет прям ссылку, 
    а мы сделали так, 
    чтобы оно вывело <a href="http://">линка</a>, 
    то есть выведит само <a href="http://">линка</a>, 
    без всяких ссылок, прям как текст. 
    Внести в функцию изменения, 
    можно, 
    но осторожно. 
    ТОЛЬКО ДЛЯ ЗНОЮЩИХ ПИХХИПИ.
    ?>

    мозготрах

    substr, 13 Июля 2011

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

    +151

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    /*
    * Условия для шаблонов и не только ;)
    * $content - то что проверям
    * $data - то что выводим
    */
    function if_set($content, $data) {
    	return empty($content) ? '' : stripslashes($data);
    }

    Комментарий больше кода, и автор ещё Вам подмигивает.

    nethak, 12 Июля 2011

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

    +163

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    function utf_decode($str) {
        /*static $table = array("\xD0\x81" => "\xA8", "\xD1\x91" => "\xB8",);
        return preg_replace('#([\xD0-\xD1])([\x80-\xBF])#se', 'isset($table["$0"]) ? $table["$0"] : chr(ord("$2")+("$1" == "\xD0" ? 0x30 : 0x70))', $str);*/
    	return $str;
    }

    Зря закоментил такая панацея была что вы, что вы...

    nethak, 12 Июля 2011

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

    +168

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    /*
    * Выводим чекбоксы :D
    * $name - имя инпута чеки
    * $val - тру ор фалсе
    */
    function checkbox($name, $val) 
    {
    	$checked = !empty($val) ? 'checked ' : false;
    	return "<input type=\"checkbox\" name=\"" . $name . "\" " . $checked . "/>";
    }

    Тру от фалсе

    nethak, 12 Июля 2011

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

    +161

    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
    /*
    * Получаем категории из массива ЭКСПЕРЕМЕНТАЛЬНАЯ ФУНКЦИЯ :D
    * $fp - файл
    * $content - то что запишем
    */
    function save_conf($fp, $content) 
    {
    	$file_name = basename($fp);
    	if(!file_exists($fp))
    	{
    		file_put_contents($fp,'');
    		@chmod(ROOT . $fp, 0666 );
    	}
    	if (file_exists($fp) && $content) 
    	{
    		$fp = fopen($fp, "wb");
    		$content = "<?php
    if (!defined('ACCESS')) 
    {
        header('Location: /');
        exit;
    }
    \n\n".$content."\n";
    		fwrite($fp, $content);
    		fclose($fp);
    	}
    }

    И как же он тут получит категории остаётся загадкой, и поржать он любит в комментариях смотрю)
    * BY Toogle CMS

    nethak, 12 Июля 2011

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

    +163

    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
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    97. 97
    98. 98
    99. 99
    Файл 1 :
    <?php
    for ($i=0; $i<10; $i++) // Моё примечение - вонять начинает отсюда
    {
    include "delstr.php";
    include "razdel2.php";
    include "gendat.php";
    include "dopismain.php";
    }
    Файл delstr.php:
    <?php
    $num_stroka = 7; //Удалим 7 строку из файла
    $file = file("gendat.php"); // Считываем весь файл в массив
    for($i = 0; $i < sizeof($file); $i++)
    if($i == $num_stroka) unset($file[$i]);
    $fp = fopen("gendat.php", "w");
    fputs($fp, implode("", $file));
    fclose($fp);
    ?>
    Файл razdel2.php:
    <?php
    $sl = file('ancorrzd.txt');
    $sm = $sl[array_rand($sl, 1)];
    $datam = $sm;
    $file = fopen ("rzd.txt","w");
    $str = "$datam";
    fputs ( $file, $str);
    fclose ($file);
    $dataC = trim(file_get_contents ("rzd.txt"));
    $data="\$dataCata='$dataC';";
    $file = 'gendat.php';
    $array=file( $file );
    $array[7]= $data; //строка в которой нужно изменить значение $data
    file_put_contents( $file, $array );
    ?>
    Файл gendat.php:
    <?php
    error_reporting(E_ALL);
    ini_set('display_errors', 'On');
    ini_set('session.auto_start', '1');
    //ini_set('upload_tmp_dir', 'c:\tmp');
    set_time_limit(120);
    @session_start();
    $dataCata='xfgjcfyi';
    $txtFile = 'result.txt'; // файл с текстом
    $ancorFile = 'ancor.txt'; // файл с заголовками
    $tplFile = 'template.txt'; // файл шаблона .dat файлов
    $mainTplFile= 'maintemplate.txt'; // Шаблон файла со ссылками
    $datDir = "articles/$dataCata"; // директория для .dat файлов
    $datExt = 'dat'; // расширение .dat файлов
    $mainFile = 'main.dat'; // Файл со ссылками на .dat файлы
    $srcCharset = 'cp1251'; // Кодировка исходных файлов
    $destCharset = 'cp1251'; // Кодировка файлов на выходе
    $scriptCharset = 'utf-8'; // Кодировка скрипта
    $blockLength = 4000; // Максимальный размер блока в байтах из файла с текстом
    $file = fopen ("engine/menu.php","a");
    $str = "<li><a href=\"/$dataCata/\">$dataCata</a></li>";
    if ( !$file )
    {
    echo("Ошибка открытия файла");
    }
    else
    {
    fputs ( $file, $str);
    }
    fclose ($file);
    if ($srcCharset == 'utf-8') $blockLength *= 2;
    $blockLength = $blockLength % 2 > 0 ? $blockLength+1 : $blockLength;
    if ( !is_dir($datDir) ) mkdir($datDir, 0777, true);
    $hMain = NULL;
    if ( !(@$hMain = fopen($mainFile, 'w+')) ) die("Невозможно создать файл $mainFile<br/>\b");
    $hText = fopen($txtFile, 'r');
    $ancors = explode("\n", $srcCharset == $scriptCharset ? file_get_contents($ancorFile) : iconv($srcCharset, $scriptCharset, file_get_contents($ancorFile)));
    $template = $srcCharset == $scriptCharset ? file_get_contents($tplFile, 'r') : iconv( $srcCharset, $scriptCharset, file_get_contents($tplFile, 'r') ); // читаем шаблон
    $content = '';
    while ($content = fread($hText, $blockLength)) {
    $fname = genName();
    if (@$hDat = fopen("$datDir/$fname.$datExt", 'w')) {
    $ancor = trim($ancors[rand(0, count($ancors)-1)]);
    $content = $srcCharset == $scriptCharset ? trim($content) : iconv($srcCharset, $scriptCharset, trim($content));
    // Генерим dat файлы по шаблону
    $thisTpl = preg_replace("/(<!--.*?Kan_title.*?-->).*?(<!--.*?Kan_title.*?-->)/uism", "$1\n$ancor\n$2", $template);
    $thisTpl = preg_replace("/(<!--.*?Kan_content.*?-->).*?(<!--.*?Kan_content.*?-->)/uism", "$1\n$content\n$2", $thisTpl);
    $thisTpl = $scriptCharset == $destCharset ? $thisTpl : iconv( $scriptCharset, $destCharset, $thisTpl );
    if (fwrite($hDat, $thisTpl)) {
    echo "Файл $dataCata/$fname.$datExt записан<br/>\n";
    $html = "
    <loc><a href=\"/$dataCata/$fname.html\">$ancor</a></loc>\n";
    fwrite($hMain, iconv($scriptCharset, $destCharset, $html));
    } else { echo "Ошибка записи в файл $dataCata/$fname.$datExt<br/>\n"; }
    } else {
    echo "Не могу записать в файл $dataCata/$fname.$datExt<br/>\n";
    }
    }
    // Генерация уникального имени
    function genName() {
    return substr(md5(uniqid(rand(), true)), 0, rand(7, 13));
    }
    ?>

    Человек интересуется, почему цикл выполняется только 1 раз. Ему посоветовали разместить лучше свой код тут, но по-моему, делать это самостоятельно у него желания нет, решил помочь. Пруфлинк - http://forum.searchengines.ru/showthread.php?t=643176

    Nemoden, 12 Июля 2011

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