2014-10-15 3 views
-1

Я могу видеть один и тот же идентификатор id сеанса на обеих страницах. также приветствовал эхо на первой странице, но на второй странице session_['hello']; указана неопределенная переменная. или если я использую isset, похоже, что ts не устанавливается на второй странице.Идентификатор сеанса прошел, но не переменные сеанса

Это проблема php.ini?

<?php 
 

 

 
    if (version_compare(PHP_VERSION, '5.4.0', '<')) { 
 
     if(session_id() == '') {session_start();} 
 
    } else { 
 
    } 
 

 
    echo session_id(); 
 
    $_session['hello'] = 'yes'; 
 
    echo $_session['hello']; 
 

 

 

 

 
?> 
 
    <a href="https://192.168.1.183/hello/b.php">gotob /a> 
 

 

 

 
<?php 
 
    session_start(); 
 
    if (isset($_SESSION['hello'])){ 
 

 

 
    echo $_session['hello']; 
 
} 
 
    echo session_id(); 
 

 

 
?>

+1

'$ _session' <= положить все те, что в ВЕРХНЕМ футляре. Это [** superglobal **] (http://php.net/manual/en/language.variables.superglobals.php) –

+1

Одна маленькая вещь, не забудьте закрыть тег ''. В настоящее время у вас есть '/ a>' – Bijan

ответ

2

Конкретизируя мой комментарий:

$_session < = поставить все те прописными $_SESSION.

Это superglobal и должен быть в буквах верхнего регистра.

Plus, вы упоминаете:

"но вторая страница сессии _ [ 'привет'], говорит неопределенная переменная"

Синтаксис является $_SESSION['hello'];

Вы должны также убедитесь, что session_start(); находится на всех страницах, используя сеансы.

О, и, как заметка на полях, и, как указано в комментарии:

<a href="https://192.168.1.183/hello/b.php">gotob /a> 

< отсутствует от него.

<a href="https://192.168.1.183/hello/b.php">gotob</a> 
Смежные вопросы