0

www.abc.com のようなドメインを持つライブ サーバーでホストされているプロジェクトがあります。

ライブ ドメイン: IE (7、8、9、10) で Cookie を設定できません - 以下のコードで説明されているように (Cookie は IE ブラウザーで有効になっています)、Firefox、Chrome では Cookie を設定できます。 、Opera および Safari では問題ありません。サーバー時間は正確です(ヨルダンの現在時間)

ローカルホスト上: 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
    }
}
?>

ヒントをいただければ幸いです。ありがとうございました!

4

1 に答える 1

0

私は問題を解決しました、それは些細なことです。IE のプライバシーの詳細設定で、サードパーティの設定が有効になっていませんでした。

于 2013-10-30T17:45:48.003 に答える