我刚遇到一个问题。我将会话ID存储在cookie中,以便在用户离开网站然后再次返回时检索购物篮信息。我的问题是,作为测试我清除了所有会话但保留了cookie,但现在页面继续加载。
我的问题是,有没有办法首先使用php获取tmp目录,然后测试存储的会话ID是否有效。
的问候,
菲尔
修改
我目前正在使用
if( isset( $_COOKIE[$cookieKey] ) ) {
session_id( $_COOKIE[$cookieKey] );
}
// create a new or carry on the existing session
session_start();
给了我这个问题
答案 0 :(得分:1)
这是不可靠和不必要的。相反,在代码中添加检查以确定$_SESSION
超全局是空的还是(甚至更好)具有适当的键:
<?php
if( !isset($_SESSION['foo']) ){
// User is not fooed yet
$_SESSION['foo'] = 33;
}
find_records_by_foo($_SESSION['foo']);
更新:无论您想对Cookie和会话ID做什么,我的回答仍然适用。完成cookie检查后,使用isset()
进行会话测试。