2013-11-22 3 views
0

У меня есть страница, где после того, как пользователь входит в систему, начинается сессия и есть приветственное сообщение с именем пользователя - например, так:Populate текст с информацией о PHP Session

<h2>Welcome, <?php echo $_SESSION["User"]; ?>, to the site!</h2> 

Или что-то вдоль этих линий - пока не решили. Но проблема в том, что она не появляется.

У меня есть код, который аутентифицирует пользователя и все такое, и эта часть работает. Они аутентифицируются, и у них есть сеанс - он существует (если нет, страница перенаправляет их на логин или страницу с ошибкой в ​​зависимости от того, сколько попыток).

При проверке подлинности, форма сообщений на «login.php», где все остальные код происходит, в том числе это:

if (isset($_POST['submit']) && ($allowEntry == yes)) 
{ 
session_start(); 
session_register ("Logged_In"); 
session_register("User"); 
$_SESSION["Logged_In"] = 'true'; 
$_SESSION["User"] = $user; 

if ($_SESSION["User"]=='SOMEUSER') 
{ 
header('Location: /somepage.php'); 

exit; 
} 
elseif ($_SESSION["User"]=='SOMEOTHERUSER') 
{ 
header('Location: /someOtherPage.php'); 
exit; 
} 
} 

Итак, кто-нибудь знает, как сделать, чтобы текст появится в «» элемент выше?

+0

Да что? В элементе ""? Я не понимаю? – Loko

+1

Я собираюсь принять дикое предположение, что вы забыли session_start на другой странице. –

+0

Это была проблема, спасибо. –

ответ

0

Я не уверен, что полностью понимаю вопрос, но понимаю, что вы устанавливаете сеанс в одном скрипте и пытаетесь получить значение от него в другом? Если это так, это, скорее всего, потому, что вы не вызвали session_start() во втором. Обратите внимание, из документации

session_start() создает сеанс или возобновляет текущую основанный на идентификатор сеанса передается через GET или POST запрос, или передаются через печенья.

+0

ЭТО была проблема! Спасибо всем! Я ценю это! Большая любовь к людям переполнения стека! –

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