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

    +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
    <?php
    
    if($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest') {
    
    sleep(3);
    
    if($_POST[parent_id]) $parent_id = preg_replace('/\D+/i','', $_POST[parent_id]);
    else $parent_id = 0;
    
    $author = trim($_POST[author]);
    $comment = trim($_POST[comment]);
    
    
    
    if(!$author) $error[author] = 'Введите имя!';
    if(!$comment) $error[comment] = 'Напишите комментарий!';
    
    if($error)
    exit(json_encode($error));
    
    
    require_once 'blocks/bd.php';
    
    
    $sql = "INSERT INTO comments (parent_id, name, comment, date_add) VALUES ($parent_id, '$author', '$comment', NOW())";
    $result = mysql_query($sql);
    if(!$result)
    {
    $error[] = 'Произошла ошибка, комментарий не сохранен';
    exit(json_encode($error));
    }
    exit();
    }
    
    ?>

    Запостил: qbasic, 16 Февраля 2011

    Комментарии (16) RSS

    • строка 5 доставила :)
      Ответить
      • Забавная задержка.
        Ответить
        • Может они таким способом выбивают деньги на апгрейд сервера?
          Ответить
          • Обеспечивают себя работой... : )
            Ответить
          • просят выделить много времени на проведение оптимизации и рефакторинга )))))))
            Ответить
          • кроме шуток, в весьма серьезеом коммерческом продукте мы добавляли sleep(3000) чтобы создать видимость что программа что-то делает
            Ответить
            • Спать 50 минут? Это ж сколько открытых соединений надо держать. А вообще за такое руки рубить надо.
              Ответить
            • Sleeper Pro Enterprise Edition?
              Ответить
    • Нет конечно перед таким важным действием нужно подготовится)))
      Но тут ребят если речь идёт о том, что данный метод коментирования работает на аяксе, то может быть это нормально, я сталкивался с проблемами когда работа идёт с AJAX передачей... Но 3 секунды то много чтото))) А может сайт посещаемый и хостинг ругается))
      Ответить
    • Приходилось sleep ставить из-за того, что не успевала отреплицировать БД, но тут.
      Ответить
    • тут еще скульинекъция есть....

      фееричный говнокод короче
      Ответить
    • $parent_id = preg_replace('/\D+/i','', $_POST[parent_id]);

      А я дурак всегда (int) юзал.
      Ответить
    • sleep думаю просто забыли убрать. Юзают для проверки анимации при выполнении ajax запроса.
      Ответить

    Добавить комментарий