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

    +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
    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
    $ctime = sprintf("%04d%02d%02d%02d%02d%02d",
    					date ("Y",
    					    mktime (date("s"),
    						date("i"),
    						date("H"),
    						date("m"),
    						date("d"),
    						date("Y")
    					    )
    					),
    					date ("m",
    					    mktime (date("H"),
    						date("i"),
    						date("s"),
    						date("m"),
    						date("d"),
    						date("Y")
    					    )
    					),
    					date ("d",
    					    mktime (date("H"),
    						date("i"),
    						date("s"),
    						date("m"),
    						date("d"),
    						date("Y")
    					    )
    					),
    					date ("H",
    					    mktime (date("H"),
    						date("i"),
    						date("s"),
    						date("m"),
    						date("d"),
    						date("Y")
    					    )
    					),
    					date ("i",
    					    mktime (date("H"),
    						date("i"),
    						date("s"),
    						date("m"),
    						date("d"),
    						date("Y")
    					    )
    					),
    					date ("s",
    					    mktime (date("H"),
    						date("i"),
    						date("s"),
    						date("m"),
    						date("d"),
    						date("Y")
    					    )
    					)
    				    );

    limmenz, 15 Марта 2012

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

    +149

    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
    <?PHP 
    ##### ПРОВЕРКА ДАННЫХ #####
    $admin=0;
    //тут может быть еще что-нибудь предварительное
    $admin=$_REQUEST['admin'];
    if($admin)
    {
       //..функционал админа
    }
    else
    {
       //что-то еще
    }
    
    
    ##### АВТОРИЗАЦИЯ #####
     
    $login=$_POST['login'];
    $password=$_POST['password'];
    //предполагаем соединение с БД установленным
    $result=mysql_query("SELECT user_id FROM users WHERE login=$login AND password=$password");
    if(mysql_num_rows($result))
    {
       //все хорошо - пользователь найден, выполняем процедуру его логина
    }
    else
    {
       //какая-то ошибка для пользователя
    }
    ?>

    Примеры "супер" безопасности с того же PHP.su

    Julike, 14 Марта 2012

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

    +154

    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
    <?php
    // Выводим HTML-заголовки:
    echo '<html>';
    echo '<head>';
    echo '<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">';
    echo '<title>Test Form PHP.SU</title>';
    echo '</head>';
    echo '<body>';
    echo '<h3>Тестовая форма</h3>';
    echo "<p>Переданное значение текстового поля: <b>".$_POST['textfield']."</b></p>";
    echo "<p>Переданное значение поля пароля: <b>".$_POST['pswfield']."</b></p>";
    echo "<p>Переданное значение скрытого поля hidden: <b>".$_POST['hidden']."</b></p>";
    echo '<hr size="1">';
    echo '<p>Были включены следующие независимые переключатели: </p>';
    if (isset($_POST['checkbox1'])) echo "<p><b>Первый</b></p>";
    if (isset($_POST['checkbox2'])) echo "<p><b>Второй</b></p>";
    if (isset($_POST['checkbox3'])) echo "<p><b>Третий</b></p>";
    echo '<hr size="1">';
    
    if (isset($_POST['radiobutton']))
    {
    echo '<p>Был выбран независимый переключатель со следующим значением: ';
    if ($_POST['radiobutton']==="yes") echo "<b>Yes</b>";
    if ($_POST['radiobutton']==="no") echo "<b>No</b>";
    echo '</p>';
    }
    else echo '<p>Ни один из независимых переключателей не был выбран</p>';
    echo '<hr size="1">';
    echo '<p>Значение многострочного текстового поля :</p>';
    echo "<p><b>".$_POST['textarea']."</b></p>";
    echo '<hr size="1">';
    echo "<p>Значение списка с единственным выбором: <b>".$_POST['day_s']."</b></p>";
    echo '<hr size="1">';
    echo '<p>Значения списка с множественным выбором: </p>';
    foreach ($_POST['day_m'] as $keys=>$values) echo "<b>$values</b><br>";
    echo '<hr size="1">';
    echo '<p>&copy;&nbsp;2005 <a href="http://php.su">PHP.SU</a></p>';
    echo '</body>';
    echo '</html>';
    ?>

    Пример работы с формами с сайта PHP.SU

    Julike, 14 Марта 2012

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

    +156

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    class store_mod_multi_ftp extends store_mod_ftp {
        public function __construct($options) {
            //...
        }
        protected function connect($url, $login) {
            parent::__construct($url, $login);
        }
        //...
    }

    ФТП-мод, который умеет стягивать файлы с разных серверов сразу, в отличие от своего родителя. И ведь работает, зараза!

    Lowezar, 14 Марта 2012

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

    +148

    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
    .top_menu LI:FIRST-CHILD A
    {
    	width:100px;
    }
    .top_menu LI + LI A
    {
    	width:167px;
    }
    .top_menu LI + LI + LI A
    {
    	width:127px;
    }
    .top_menu LI + LI + LI + LI A
    {
    	width:102px;
    }
    .top_menu LI + LI + LI + LI + LI A
    {
    	width:92px;
    }
    .top_menu LI + LI + LI + LI + LI + LI A
    {
    	width:184px;
    }

    Не совсем php, конечно, но отборное Г***о я встретил в проекте))

    mario2046, 14 Марта 2012

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

    +156

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    $phone = str_replace("с",",",$phone);
    $phone = str_replace("до","",$phone);
    $phone = str_replace("д",",",$phone);
    $phone = str_replace("раб","",$phone);
    $phone = str_replace("м.","",$phone);
    $phone = str_replace("т","",$phone);
    $phone = str_replace("и",",",$phone);

    Silverthorne, 14 Марта 2012

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

    +158

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    public function beforeDelete($event=null)
    	{
                   foreach($this->outers as $outer)
    			$outer->delete();
    			
    		Subscribe::model()->deleteAllByAttributes(array('user_id'=>$this->user_id));
    
    		return self::beforeDelete($event);
    	}

    Сука неделю ошибку искал

    Curly, 14 Марта 2012

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

    +146

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    if($this->unpriced){
                //...............  строк 30 кода
                if($this->unpriced){
                      //................ строк 10 кода
                }                
    }

    Вот такую забавную проверку нашол в старом коде. Видать, для уверенности, или скорее всего логика менялась.

    Edd, 12 Марта 2012

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

    +158

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    $uri = $_SERVER["REQUEST_URI"];
    
    // получаем урл и выбираем id
    preg_match('![?|&]p=(.*)$!',$uri,$r);
    @$_GET['p'] = $r[1];

    DarkThinker, 12 Марта 2012

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

    +162

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    if (substr(getcwd(), 0, 1) == "/") 
    {
        $div = ":";
    } // *nix system
    else 
    {
        $div = ";";
    }

    PATH_SEPARATOR? Нет, не слышал.

    travka, 11 Марта 2012

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