У меня необычная проблема, происходящая только на одном сервере.
Следующий код
....
elseif ($_GET['action']=='login') {
if (empty($_POST['login_name'])) { $_POST['login_name']=''; }
if (empty($_POST['login_pass'])) { $_POST['login_pass']=''; }
if (!empty($_POST['send'])) {
if (($_POST['login_name']==_ADMIN_NAME) and ($_POST['login_pass']==_ADMIN_PASS)) {
//Successfully logged in
$_SESSION['logged']=1;
// DOES NOT WORK
header('Location: '.$filename);
die('Command '.$filename);
}
}
// Show Form;
include('plogin.inc.php');
}
elseif ($_GET['action']=='logout') {
$_SESSION['logged']=-1;
// DOES WORK!
header('Location: '.$filename);
}
Так что проблема в том, что если я нажму на ссылку выхода из системы, все пройдет хорошо, и я перенаправлюсь на $ filename.
Если я отправляю форму входа в систему, она проверяет правильность сообщения, устанавливает переменную сеанса, но затем умирает вместо перенаправления.
У меня есть выходные буферы, все отчеты об ошибках, но (без ошибок), они не перенаправляются, когда я публикую с формой, даже если она определенно проходит (потому что переменная сеанса установлена, и я получаю часть die)
Что может быть причиной такого поведения?
Спасибо