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

    +11

    1. 1
    2. 2
    3. 3
    4. 4
    for ($i = 0; $i < 11; $i++) {
        if ($i < 5) continue;
        //остальной код
    }

    первые 5 не нужны

    kropotor, 16 Сентября 2015

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

    +2

    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
    class Order_OrderProcessorBuilder
    {
        /**
         * @param $processorName
         * @return Order_Abstract_OrderAbstract
         */
        private static function createOrderProcessor($processorName)
        {
            $processorClassName = 'Order_Types_'.ucfirst($processorName);
            return new $processorClassName;
        }
    
        /**
         * @param $builderName
         * @param Order_Abstract_OrderAbstract $orderProcessor
         * @return Order_Abstract_BuilderAbstract
         */
        private static function createOrderBuilder($builderName, Order_Abstract_OrderAbstract $orderProcessor)
        {
            $builderClassName = 'Order_Builders_'.ucfirst($builderName);
            return new $builderClassName($orderProcessor);
        }
    
        /**
         * @param Order_Abstract_BuilderAbstract $orderBuilder
         * @return Order_Director
         */
        private static function createDirectorClass(Order_Abstract_BuilderAbstract $orderBuilder)
        {
            return new Order_Director($orderBuilder);
        }
    
        /**
         * @param $orderTypeName
         * @return Order_Abstract_OrderAbstract
         */
        public static function build($orderTypeName)
        {
            /** @var Order_Abstract_OrderAbstract $orderProcessor */
            $orderProcessor = self::createOrderProcessor($orderTypeName);
            /** @var Order_Abstract_BuilderAbstract $orderBuilder */
            $orderBuilder = self::createOrderBuilder($orderTypeName, $orderProcessor);
            $director = self::createDirectorClass($orderBuilder);
    
            $director->construct();
            return $orderBuilder->getResult();
        }
    }

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

    proweber1, 16 Сентября 2015

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

    +6

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    if (strlen($fio) < 2) {
        $error = 1; $error_text .= "Вы не представились<br>";
    }
    
    if (strlen($fio) > 5) {
        $error = 1; $error_text .= "Такого имени не бывает<br>";
    }

    Только избранный пройдет валидацию

    develop_id666, 15 Сентября 2015

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

    +2

    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
    <?php
    $connect=mysql_connect('localhost', 'gvm.12', '963741258') or die(mysql_error());
    mysql_select_db('gvm.12');
    if(isset($_POST['enter']))
    {
    $login_=$_POST['login_'];
    $password_=md5($_POST['password_']);
    
    $query=mysql_query("SELECT * FROM  users WHERE login='$login_'");
    $user_data=mysql_fetch_array($query);
    if($user_data['password']==$password_)
    {
    echo "You have succesfully enter";
    $check=true;
    }
    else 
    {
    echo "wrong login or password";
    }
    }
    ?>

    Просто пиздец!

    webalex127, 15 Сентября 2015

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

    +2

    1. 1
    2. 2
    3. 3
    4. 4
    public function defaultAction() {
    
            set_time_limit(1200);
            ini_set('memory_limit','4096M');	// 5 Gb

    Сунь-цзы -- искусство военного обмана

    cephuo, 11 Сентября 2015

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

    +7

    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
    $cachefile = __DIR__. "/cache/".hash("md5", json_encode($_GET));
    
    if (file_exists($cachefile))
    {
      include($cachefile);
    }
    else
    {
    ob_start();
    
    do_something();
    
    $fp = fopen($cachefile,"w");
    fwrite($fp, ob_get_contents());
    fclose($fp);
    ob_end_flush();
    }

    Кэширование для инвалидов, применяется во внешнем API.

    nihirash, 10 Сентября 2015

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

    +3

    1. 1
    2. 2
    3. 3
    public function findByEventId($eventId) {
    	return $this->findByEventId($eventId);
    }

    Я просто оставлю это здесь...

    bit0rez, 10 Сентября 2015

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

    +1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    $tel = Number::clearPhone(trim($info['telephone']));
                $allowed_chars = '1234567890';
                if (!Number::clearPhone($tel)) {
                    $errors['error'] = "Введите телефонный номер";
                    $errors[] = 'telephone';
                }
                for ($i = 0; $i < mb_strlen($tel); $i++) {
                    if (mb_strpos($allowed_chars, mb_strtolower($tel[$i])) === false) {
                        $errors['error'] = "В номере должны быть только числа";
                        $errors[] = 'telephone';
                    }
                }

    ну вот можно же было просто как-то так написать:

    preg_match('^((8|\+7)[\- ]?)?(\(?\d{3}\)?[\- ]?)?[\d\- ]{7,10}$', $tel)

    NotFake, 09 Сентября 2015

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

    +1

    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
    <?
    require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
    $APPLICATION->SetTitle("Новости");
    ob_start();
    
    $APPLICATION->IncludeComponent("bitrix:news", "news-lenta", array(
    	"IBLOCK_TYPE" => "press",
    	"IBLOCK_ID" => "12",
    # вырезано: просто вызывается компонент Битрикс "список новостей"
    );
    
    # веселье тут. Шах и мат, Битрикс!
    $html_code = ob_get_contents();
    ob_end_clean();
    $doc = new DOMDocument();
    
    $html_code = mb_convert_encoding('<meta charset="utf-8">'.$html_code, 'HTML-ENTITIES', "UTF-8");
    if($doc->loadHTML($html_code))
    {
    	$xpath = new DOMXpath($doc);
    }
    // Элемент
    $element_list = $xpath->query(".//descendant::div[@id='element']");
    if($element_list->length > 0)
    {?>
        <div class="container"><?
    	for($i=0;$i<$element_list->length;$i++)
    	{
    		echo $doc->saveHTML($element_list->item($i));
    	}
    	?></div><?}
    
    // Новости
    $blog_post_list = $xpath->query(".//descendant::div[@id='res']/div[@class='blog margin-bottom-40']");
    if($blog_post_list->length > 0)
    {
    	?><div class="container blog-full-width"><?
    	for($i=0;$i<$blog_post_list->length;$i++)
    	{
    		
    		echo $doc->saveHTML($blog_post_list->item($i));
    		
    	}
    	?></div><?
    }
    // Пагинатор
    $pagination_list = $xpath->query(".//descendant::ul[@class='pagination']");
    if($pagination_list->length > 0)
    {
    	?><div class="text-center"><?
    	for($i=0;$i<$pagination_list->length;$i++)
    	{
    		
    		echo $doc->saveHTML($pagination_list->item($i));
    		
    	}
    	?></div><?
    }
    ?>
    
     <? require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");?>

    Шах и мат, Битрикс!

    nik757, 07 Сентября 2015

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

    +3

    1. 1
    protected  $MIN_PHOTO_COUNT = 10; #Используется для того, чтобы определить что это фотоотчёт а не детский утренник, хотя если честно сомнительно

    Рабочий сервис с фотоотчётами городских мероприятий...

    bit0rez, 07 Сентября 2015

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