Перенаправление страниц по IF-предложению - PullRequest
0 голосов
/ 08 ноября 2018

Я сейчас работаю над небольшим php-проектом, чтобы научить меня PHP, javascript и т. Д.

У меня есть index.php , который должен управлять тем, какой сайтосуществляется доступ.Для этого я использую _GET переменные.

Если login_message не установлено, login.php будет открыто.(Это работает просто отлично.) Для ввода пользователя генерируется несколько текстовых полей и кнопка.

После обработки входа в систему снова будет вызван index.php и login_message будет установлено.

После этого пользователь должен быть перенаправлен на input.php (если вход был успешным и правильное input_message былоотправить) куда он может ввести некоторые другие данные.

Проблема: input.php будет обработано (если используется функция header()), но страница не обновится сама.

Что я пробовал:

    header("Refresh:0 Location:input.php");

    echo '<script type="text/javascript">';
    echo 'window.location.replace("http://someurl/input.php")';
    echo '</script>';

    echo '<script type="text/javascript">';
    echo 'window.location.assign("http://someurl/input.php")';
    echo '</script>';

    echo '<script type="text/javascript">';
    echo 'window.location.href("http://someurl/input.php")';
    echo '</script>';

Я предполагаю, что header() не будет работать, потому что HTML-код уже сгенерирован в login.php ?index.php полностью свободен от пробелов или HTML-кода.

1 Ответ

0 голосов
/ 08 ноября 2018

Используйте die(header("Location:input.php")); без JavaScript. Обратите внимание на die или exit.

У вас есть форма для входа. Пользователь вводит учетные данные и отправляет их. Вы получаете учетные данные и продолжаете их. Вы решаете либо перенаправить, либо снова показать форму входа. Между получением учетных данных и перенаправлением нет необходимости в HTML-коде. Отправка заголовка после html-кода не работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...