У меня есть этот php-код,
<?php session_start(); Print_r($_SESSION); $_SESSION['value'] = 1; Print_r($_SESSION); ?>
Почему это печатает следующее, каждый раз, когда я обновляю страницу.
Array ( ) Array ( [value] => 1 )
Он должен печатать,
Array ( [value] => 1 ) Array ( [value] => 1 )
Я использую lighttpd
как http
Server в Fedora 14.
Я прочитал, что запуск chown -R root:lighttpd /var/lib/php/
исправил проблему для других, которые имели ту же проблему.
Источник:
http://masdeni.com/archives/6-Lighttpd-+-PHP-Session-Problem.html
Я бы проверить, если session_start()
возвращает true
(сеанс запущен), например:
$is_session_started = session_start();
Если $is_session_started == false
, тогда у вас есть 1/2 вашего ответа прямо там. Другой 1/2 будет лежать в выяснении, почему он не начинается. Per @Ryan выше, проверьте настройки своего сеанса.
Если вы используете файлы cookie для хранения идентификатора сеанса, убедитесь, что вы вызываете session_start()
перед печатью / эхом / возвратом любых других значений в браузер.