我将会话存储到MySQL数据库中。会话数据被序列化并存储到DB单元。将序列化对象存储到数据库的一部分
问题是:序列化对象只是部分进入数据库。 如果我回显查询字符串,请将其复制并粘贴到phpMyAdmin->数据库查询中,并将其填入数据库已满,因为它应该。 “echo mysql_error”显示没有错误。 编码不是原因,我已经严格声明。 这是我使用的代码片段。
$sql = "UPDATE sessions
SET SESSION_ID='$id', ACCESS='$access', DATA='".stripslashes($data)."', USER_ID='$username' WHERE SESSION_ID = '$id'";
echo("<br>".$sql."<br>");
return mysql_query($sql, $_sess_db);
echo mysql_error($_sess_db);
我该如何解决?以及为什么当我复制粘贴到phpmyadmin时,同样的查询工作正常,但不能像通过mysql_query函数执行时那样工作?
叫我假设序列化的数据是问题。你确定所有数据都是序列化的吗?并且反序列化成功了?我不认为这个问题来自MySQL。您是否尝试将会话保存在纯文件中?你有同样的问题吗? – 2012-03-20 12:21:57
1.您可以发布echo'd字符串吗?这可能是导致这... 2. Mysql_error从未使用,因为你回来之前 – 2012-03-20 12:26:34
当我回应查询所有数据序列化。我不反序列化它,我通过phpMyAdmin查看数据库并查看对象是否完整。使用相同对象的纯文件中的会话工作正常 – user1010936 2012-03-20 12:40:57