Я работаю в подпапке на своем веб-сайте: www.example.com/subfolder
Теперь я хочу установить сеанс, доступный только на веб-узле www.example.com/subfolder
Для этого я сделал следующее:
private $sessiontimeout= 10800; private $subdomain = '/subfolder/'; private $website = 'example.com'; function __construct ($table) {print_r( $_SESSION ); $this->table=$table; $this->savedusername= $this->getsession('logbook'); session_set_cookie_params ( $this->sessiontimeout, $this->subdomain, $this->website, 0, 1 ); ini_set('session.use_only_cookies', 1); if (!is_null ($this->savedusername)) { $resultobj=selectquery ("select last_login_one from $this->table where username=?", "s", (array) $this->savedusername); if ($resultobj['obj']->num_rows() > 0) { $this->last_login=$resultobj['data'][0]['last_login_one']; } } }
Теперь, когда я печатаю массив $ _SESSION, он ничего не отображает, даже «Array ()».
Пожалуйста, что я не делаю правильно?
благодаря
Вы использовали session_start () где-нибудь до этого кода?
Я также предлагаю использовать var_dump()
вместо print_r()
для отладки значений, поскольку print_r не выводит пустые значения, поэтому иногда возникает некоторая путаница.
Сначала нужно вызвать session_start
(если у вас нет session.auto_start
установленного в 1).
_SESSION является суперглобальной. Он находится в глобальном масштабе.
Итак, вы, вероятно, забыли session_start();