ajax request / php session vars

时间:2011-01-24 01:06:09

标签: php javascript ajax

我对javascript / ajax很新,所以请耐心等待。我正在尝试将表单字段值作为POST变量发送到php脚本,并让该php脚本设置会话变量。我不需要更新我正在调用javascript脚本的页面上的任何内容。所以这就是我正在做的......

这是我的javascript东西:

xmlhttp.open("POST","ajax/create_employee_session_handler.php",true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send("blah=1");
window.location="newpage.php"; 

这是我的PHP代码(简化):

session_start(); 
if($_POST)
{

    $_SESSION['blah'] = $_POST['blah'];  
}

由于某种原因,当我重定向到下一页时,我没有得到$ _SESSION ['blah']。对此有任何建议将不胜感激。

1 个答案:

答案 0 :(得分:4)

您正在启动AJAX请求,但您没有给它机会完成(Ajax中的“A”代表“异步”,因此当您执行location()请求仍在运行时。)机会Ajax脚本永远不会被调用。

将切换页面位置的部分放入Ajax请求的成功回调中,以确保在重定向之前它能够正常运行。