PHP会话通过AJAX改变奇怪的值

时间:2010-09-26 16:54:39

标签: php ajax session

我的代码有点乱,所以我会试着用语言向你解释:

我有这个index.php页面,它显示了我数据库中我的files表中的随机文件。人们有机会通过点击通过小型AJAX弹出窗口打开“vote.php”的笔记来评价这些文件。

现在问题就在于此。在index.php上,我从数据库中提取ID并输出它:

$_SESSION['file_id'] = $file_id;
echo $_SESSION['file_id'];

但是当我打开vote.php弹出窗口并写道:

session_start();
echo "SID="; echo $_SESSION['file_id'];

价值不一样!什么可能导致这种情况?

非常感谢。

2 个答案:

答案 0 :(得分:1)

如果不解决这个具体问题,我认为这里不需要$_SESSION

无法使用

打开vote.php
vote.php?file_id=xxxx

生成index.php时,您只需在URL中添加变量。

此处无需参加会议。

答案 1 :(得分:0)

您应该以(javascript代码)的形式将会话变量传递给您的AJAX请求:

enquiry.php?' + session_name + '='  + session_id + '&vote=whaevere_you_want&foo=bar

session_name session_id 是通过AJAX initalizer获取的javascript本地变量,可以从PHP脚本中获取它们,该脚本能够通过PHP函数提供它们:

session_name()
session_id()
分别