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

    +158.2

    1. 1
    2. 2
    3. 3
    if(empty($_SESSION['login'])) {
        die("<script>top.location.href='index.php';</script>");
    }

    Запостил: dicos, 03 Декабря 2009

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

    • Забыл добавить, на странице фреймов нет.
      Ответить
    • Ну и??? Если это на страничке типа admin.php - чем не нравится??
      Ответить
      • есть более стандартный способ, через header('Location: http://адрес');
        Ответить
        • мб человек делал инклюды и у него не получалось воспользоваться header =))
          Ответить
          • Такие инклюды надо стараться ставить после принятия критических решений.
            Такая реализация снижает эффективность работы.
            Ответить
    • ИМХО, нифига не говнокод!

      Бывает проверки надо делать не перед отправкой хидеров, а позже.
      Джаваскрипт может быть отключен, а прекратить работу скрипта критично!
      По моему даже эллегантно! ;)

      Хотя если в начале страницы, то туповато...
      Ответить
      • > Бывает проверки надо делать не перед отправкой хидеров, а позже.
        Надо использовать нормальный фреймворк, а не конструировать велосипед с треугольными колёсами.
        Ответить
      • Дык если Джаваскрипт отключен, то никакого редиректа не будет.
        А от Хедера никуда не деться.
        Ответить
        • От хейдера никуда не деться?)
          Ещё как можно...
          А вот включён/не включён у юзера ява скрипт это полностью его проблема, die() прекратил сценарий и нас уже больше ничего не волнует.
          Ответить
      • Бывает проверки надо делать не перед отправкой хидеров, а позже.
        А для этого кагбэ есть ob_* - не?
        Ответить
    • еще нашел:
      print "<script>location.href='main.php?act=non e'</script>"; die();
      Ответить

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