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

    +152

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    $mem = c("memo1")->text;
     $count =count($mem);
     for($i=0;$i<$count;$i++)
     {
     list($mai[$i], $pass[$i]) = explode(":", $mem[$i]);
     // чекаешь на валид как уже надо if( $mail[$i] == true and $pass[$i] == true) {code}
     }

    http://community.develstudio.ru/showthread.php/4745-Как-достать-текст-до-знака-quot-quot-и-после-знака-quot-quot-(делаю-чекер)

    andrey35159, 17 Марта 2012

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

    +150

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    /**
     * Enter description here ...
     */
    function getStoresByZipcode($zipcode) {
      $stores = array();
    
      $range = 40;
      $R = 6371;  // earth's radius, km

    Wuron, 15 Марта 2012

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

    +157

    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
    $k=1;
    $empty=true;?>
    <?foreach($arResult["ITEMS"] as $arItem):?>
    <?$time=time();
    $delay=345600;//секунд в 4 днях
    $date_elements  = explode(".",$arItem["DATE_ACTIVE_TO"]);?>
    	<?if(((mktime(0,0,0,$date_elements[1],$date_elements[0],$date_elements[2])+$delay) < $time) or ($arItem["PROPERTIES"]["procedure"]["VALUE_XML_ID"]=="% тут айдишник %")):?>
    		<?if($k==1):?>
    			<table><tr>
    			<th>%тут оглавления%</th>
    			<th>%тут оглавления%</th>
    			<th>%тут оглавления%</th>
    			<th>%тут оглавления%</th>
    			<th>%тут оглавления%</th></tr>
    			<?$k++;
                $empty=false;?>
    		<?endif?>
    	<?$name='';?>
    	<tr>
    	% тут перебор элементов %
    	</tr>
    	<?endif?>
    <?endforeach;?>
    </table>

    кастомизированный news.list битрикса.
    1) у каждого элемента есть ключ (номер элемента), но мы-то об этом не знаем.
    2) зачем выносить table>tr>th за цикл? И так пойдет.
    3) time() в каждой итерации? А вдруг сервер слабенький, выполнение цикла занимает больше 4-ёх дней.
    4) strtotime()? не, не слышал.
    И еще куча лулзов в проекте, выложу по ходу.
    Самое интересное, что проект крупной российской фирмы, видать местные индусы делали.

    Kreeg, 15 Марта 2012

    Комментарии (1)
  4. 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)
  5. 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)
  6. 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)
  7. 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)
  8. 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)
  9. 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)
  10. 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)