До сих пор я закодированы мой сайт, чтобы отобразить страницу входа в систему (с использованием данных GET) через: сайт д = счета & REQ = ВойтиПеренаправление в Firefox неудачу
Если они проходят проверку подлинности, он перенаправляет с помощью PHP заголовок() их на страницу учетной записи: сайт? q = account
По какой-то причине я придумал сообщение «Не перенаправляет страницу правильно» в Firefox, где работает Internet Explorer ... Вот фрагмент кода:
case 'account':
if($req=="login") {
if($user->isLoggedIn())
header("Location: /?p=account");
else {
if($_SERVER['REQUEST_METHOD'] == 'POST') {
$form_data = array('username' => $_POST['username'], 'password' => $_POST['password']);
$user->login($form_data);
if($user->isLoggedIn()) {
header("Location: /?p=account");
}
}
$pagearr=array('css' => "login.css", 'content' => "login.php");
}
}
else {
if(!$user->isLoggedIn())
header("Location: /?p=account&req=login");
}
break;
И ниже фрагмент моего класса User:
function User() {
session_start();
$this->user_id = isset($_SESSION['user_id']) ? $_SESSION['user_id'] : null;
if($this->user_id) {
$database= new Database;
if($database->checkUserSession($this->user_id,session_id())) {
$this->logged_in=true;
}
else {
$this->addSessionError('global','Your login session has timed out, you may login by <a href="/syn/?p=account&req=login">clicking here</a>.');
unset($_SESSION['user_id']);
}
}
}
Пользователь успешно прошел проверку подлинности (если я вернусь к домашней странице, это показывает, что они вошли в систему), что я сделал не так?
Возможно, перед установкой заголовка есть что-то напечатанное. Или .. вы установили ob_start()? –
Вид ошибки, которую вы испытываете, предлагает переадресовать «цикл», в котором эта страница перенаправляется на страницу, которая перенаправляет обратно на эту страницу и т. Д. –
Вызов 'exit()' явно после заголовка («Местоположение. . ");' для предотвращения дальнейшего выполнения скрипта. –