ホームページ >バックエンド開発 >PHPチュートリアル >AJAXで書かれたCookieが表示できない理由
AJAX で書かれた Cookie が表示できないのはなぜですか?
私はこの setcookie("ip",$ips,time()+3600,'/');
を ajax を使用して send.php に書きました。次に print_r($_COOKIE ); 別のページからの
ですが、Cookie 配列内の IP が表示されません。この項目
の解決策は何ですか?
-----解決策--------------------------------
Cookie に値を割り当てる前に確認してください。これまでに他の出力はありましたか?
------解決策---------
テストコードを投稿してください
------解決策------------------
印刷 Cookie をテストするための PHP は
です同じブラウザの異なるタブで実行していますか?
そうでない場合、結果は正しくありません
Ajax 実行ウィンドウが閉じて更新されるまで (ただし 1 時間以内) 結果は利用できません。
------解決策---------
理由は非常に簡単です。
1. php ブラウザが PHP に Cookie を送信するため、Cookie を取得できます
2. PHP によって設定された Cookie はブラウザのメモリに保存されます
3. ブラウザが終了するか、他の Web サイトにリダイレクトすると、Cookie は有効期限が切れていないものはファイルに保存されます
4. ブラウザのプロセスは通信できず、Cookie ファイルは生成されていません
とあればいいのですが。晴れました
------解決策----------------------
セッションはセッションIDをCookieに保存するだけです。有効期限は0、つまり放置すると消えてしまいます。
自分で考えてみてください。
------解決策---------
他のページがこの ajax ページからのものである限り飛び出してもセッションは残ります
------解決策------
dirname(__FILE__) が必要です。 ;
------解決策---------