在WordPress笨会议(Codeigniter session in wordpress)

2019-10-17 22:44发布

我已经开发了笨一个网站,并集成了博客的WordPress。 我的问题是,如果我在现场记录的,我不能够在WordPress博客用笨会话值。

在笨一次我登录我用笨会话设置以下会议。

$this->session->set_userdata('get_user_session', $auD);

现在我需要在WordPress的头文件或索引文件使用的会话。 我试图在WordPress下面的代码。

session_start();
print_r($_SESSION);

我没有得到上面的CI会话值。

Answer 1:

CodeIgniter的Session类 :

>> stores session information for each user as serialized (and optionally encrypted) data in a cookie

你组使用值$this->session->set_userdata('key','value')是不会存在于$_SESSION变量。

笨还支持存储在数据库中的会话内容。

您可以使用该配置在你的WordPress博客检索会话数据。



Answer 2:

使用cookie获取会话数据。 请参考以下链接: https://thomashunter.name/blog/accessing-codeigniter-session-data-using-external-scripts/

require_once("config.php");
$cisess_cookie = $_COOKIE['ci_session'];
$cisess_cookie = stripslashes($cisess_cookie);
$cisess_cookie = unserialize($cisess_cookie);
$cisess_session_id = $cisess_cookie['session_id'];

$cisess_connect = mysql_connect(MYSQL_HOSTNAME, MYSQL_USERNAME, MYSQL_PASSWORD);
if (!$cisess_connect) {
 die("<div class="error">" . mysql_error() . "</div>");
}
$cisess_query = "SELECT user_data FROM ci_sessions WHERE session_id = '$cisess_session_id' LIMIT 1";

mysql_select_db(MYSQL_DATABASE, $cisess_connect);
$cisess_result = mysql_query($cisess_query, $cisess_connect);
if (!$cisess_result) {
 die("Invalid Query");
}
$cisess_row = mysql_fetch_assoc($cisess_result);
$cisess_data = unserialize($cisess_row['user_data']);
print_r($cisess_data);


文章来源: Codeigniter session in wordpress