2013-02-12 2 views
0

У меня возникли проблемы с сеансами PHP. Я довольно новичок в PHP, поэтому приношу свои извинения, если я полностью глуп.Сессии PHP не сохраняются со страницы на страницу

У меня есть login.php файл, как только имя пользователя и пароль были проверен и т.д. имеет следующий код:

if($pass === $row2['PSWD']){ 
    session_start(); 
    $_SESSION['test']="hello"; 
    mysql_close($con); 
    header("Location: page.php"); 
}else{ 
    die('Wrong password'); 
} 

затем на page.php У меня есть следующий на самом верху, о тег:

<?php 
session_start(); 
session_register(); //just in case...(should not be needed) 
echo "Result:".$_SESSION['test']; 
?> 

И все это я получаю в верхней части страницы «Результат:»

Любые идеи? Как из всего, что я читал, это должно быть так просто, как это?

Заранее благодарен!

EDIT:

Мои журналы ошибок показывают:

Внимание: session_start() [function.session-старт]: открытые (/ вар/php_sessions/sess_b91f8653bcee6ef7c1e13ae8844f00da, O_RDWR) не удалось: Нет такого файла или (2) в /hermes/bosweb/web261/b2617/ipg.craigfisk/webtest/login.php в строке 28

Предупреждение: session_start() [function.session-start]: Не удается отправить ограничитель кеша сеанса - заголовки уже отправлено (вывод начат в /hermes/bosweb/web261/b2617/ipg.craigfisk/webtest/login.php:28) в /hermes/bosweb/web261/b2617/ipg.craigfisk/webtest/lo gin.php on line 28

Предупреждение: не удается изменить информацию заголовка - заголовки, уже отправленные (вывод запущен в /hermes/bosweb/web261/b2617/ipg.craigfisk/webtest/login.php:28) в/hermes/bosweb/web261/b2617/ipg.craigfisk/WebTest/login.php по линии 31

Предупреждение: Неизвестный: открытая (/ вар/php_sessions/sess_b91f8653bcee6ef7c1e13ae8844f00da, O_RDWR) не удалось: нет такого файла или каталога (2) в Unknown на line 0

Предупреждение: Неизвестно: Не удалось записать данные сеанса (файлы). Убедитесь, что текущие настройки session.save_path верны (/ var/php_sessions) в Unknown в строке 0

+0

Вы уверены, что у вас нет выхода перед session_start на обеих страницах? –

+0

Возможный дубликат: http://stackoverflow.com/questions/3023353/session-lost-after-page-redirect-in-php?rq=1 –

+0

Попробуйте вызвать 'session_write_close()' перед кодом перенаправления header(). Кроме того, добавьте exit() после перенаправления заголовка() для обеспечения безопасности. – Anton

ответ

0

после заголовка указать exit();

+0

К сожалению, это не сработало –

1

После перенаправления заголовка вам нужно поставить exit();, иначе вы только что загрузили две страницы содержимого на 1 страницу.

источник: https://stackoverflow.com/a/3023479/710827

Смежные вопросы