我的CI会话存储在我的数据库中。
我在CodeIgniter之外有一个原生PHP脚本需要userdata
中的一些信息。有没有办法让我查询CI会话表并找出当前用户的会话是什么?我认为CI检查用户IP和浏览器数据字符串的前120个字符。"那些外部脚本可以使用这两个数据,对吧?我可以查询这两个字段并获得准确的结果吗?或者CI是否知道session_id
是什么?
或者,我认为我可以从包含我需要的信息的CI设置本机会话变量,并尝试在外部PHP脚本中访问它。它没有用。
我愿意接受建议。
答案 0 :(得分:0)
我使用此代码将彗星聊天(外部应用程序)与我的CI用户系统集成:您可能需要修改它,但您可以获得这个代码:
$decoded_ci_session = @unserialize(@stripslashes($_COOKIE['ci_session']));
$sql = "SELECT user_data FROM ".TABLE_PREFIX."sessions WHERE session_id = '".$decoded_ci_session['session_id']."'";
$query = mysql_query($sql);
$row = mysql_fetch_array($query);
$decoded_ci_session = @unserialize(@stripslashes($row[0]));
最后$ decoding_ci_session应该包含$this->session->userdata()
中通常的所有用户数据