[英]PHP Sessions null in an ajax call
我有一个设置一些会话值的PHP页面:
session_start();
$_SESSION["key"] = "myvalue";
设置了该值,如果我在浏览器中打开文件sessions.php
的新选项卡,则会看到先前设置的值。
<?php
if(!session_id()) { // check if we have session_start() called
session_start();
echo "<br />session start";
}
if (!isset($_SESSION["key"]) ) {
echo "<br />session null";
} else {
echo "ok my session" . $_SESSION["key"] ;
}
?>
如果我从另一页打开同一文件,则通过AJAX在同一选项卡中的同一域中的同一文件夹中,我的会话为空。
$.ajax({
type: "POST",
url: "/php/sessions.php",
cache: false,
error: function (XMLHttpRequest, textStatus, errorThrown) {}
}).done(function(msg) {
alert(msg) // I get session null
});
编辑:我正在使用IIS的php-5.6.10-nts-Win32-VC11-x64
EDIT2:我意识到进行Ajax调用的中间页面位于同一域中。 所以这就是为什么我的会话为空
您显然忘了回音
session_start();
$_SESSION["key"] = "myvalue";
echo $_SESSION["key"];
所以你的文件有一些输出到ajax
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.