我有一个托管在实时服务器上的项目,其域如下:www.abc.com
在实时域上:我无法在 IE(7、8、9、10)中设置 cookie - 正如下面的代码中所解释的那样 - (在 IE 浏览器上启用了 cookie),但能够在 Firefox、Chrome 中设置 cookie , Opera 和 Safari 没有任何问题。服务器时间正确(约旦当前时间)
在 localhost 上:Cookie 在所有浏览器上都能完美运行!
我的代码解释如下:
在页面:“localhost/test.php”中,我输入以下代码来读取驻留在实时服务器中的 show.php 的内容:
<?php foreach (file('http://abc.com/api/show.php') as $o) echo $o ?>
在页面http://abc.com/api/show.php:
<script>
function hookscript(url){
var s = document.createElement("script");
s.type = "text/javascript";
s.src = url || null;
document.getElementsByTagName("head")[0].appendChild(s);
}
hookscript('http://abc.com/aj/ajax.php?part=1');
</script>
在页面http://abc.com/aj/ajax.php:
function hookscript(url){
var s = document.createElement("script");
s.type = "text/javascript";
s.src = url || null;
document.getElementsByTagName("head")[0].appendChild(s);
}
<?php
$part = $_GET['part'];
?>
<?php
if($part==1){
?>
<?php setcookie('test',time(),time()+3600) ?>
hookscript('http://abc.com/aj/ajax.php?part=2');
<?php
}
if($part==2){
if(isset($_COOKIE['test'])){
?>
alert('Cookies SET');
<?php
}
else{
?>
alert('Cookies NOT SET'); // WHY!
<?php
}
}
?>
将不胜感激你的提示!谢谢!