【发布时间】:2016-06-02 12:21:56
【问题描述】:
当我从域中的 iframe 创建会话,然后尝试从另一个 iframe 访问会话时它工作正常,但当我尝试通过 ajax 访问会话时它不起作用?
示例:
网站(iframe.php):
<?php
header("Access-Control-Allow-Origin: *");
session_start();
if(isset($_POST['session'])){
$_SESSION['session'] = $_POST['session'];
echo "created session";
}else if(isset($_GET['want'])){
//for ajax request
die($_SESSION['session']);
}
?>
<form action="iframe.php" method="post">
SESSION VAL:<input name="session" value="<?php echo $_SESSION['session']?>" type="text"/><br>
<input type="submit"/>
</form>
HTML
<iframe src="iframe.php">
</iframe>
<br>SESSION FROM AJAX:
<div id="AJAX"></div>
AJAX
window.setInterval(function(){
$.get( "iframe.php?want", function( data ) {
$( "#AJAX" ).html( data );
});
},1000);
See Fiddle
【问题讨论】:
-
尝试在输出标题之前启动会话。
-
@Matt 没区别!
标签: javascript php ajax session iframe