こんにちは
自作のWebページを作成したのですが
画面遷移を繰り返しているとCookieが
消えることがあるのです。
こういうことってあるのでしょうか?
環境は以下の通りです。
OS:Win2000,XP Pro
ブラウザ:IE 6.0
Cookie書込み:javascript
setCookie("bbb","hammy")
function setCookie(key, val, tmp) {
tmp = key + "=" + escape(val) + "; ";
tmp += "path=/aaa/;";
tmp += "expires=Tue, 31-Dec-2030 23:59:59; ";
document.cookie = tmp;
}
Cookie読込み:javascript
function getCookie(key, tmp1, tmp2, xx1, xx2, xx3) {
tmp1 = " " + document.cookie + ";";
xx1 = xx2 = 0;
len = tmp1.length;
while (xx1 < len) {
xx2 = tmp1.indexOf(";", xx1);
tmp2 = tmp1.substring(xx1 + 1, xx2);
xx3 = tmp2.indexOf("=");
if (tmp2.substring(0, xx3) == key) {
return(unescape(tmp2.substring(xx3 + 1, xx2 - xx1 - 1)));
}
xx1 = xx2 + 1;
}
return("");
}
Cookie削除 javascript
delCookies("CCC")
function delCookies(key) {
tmp = key;
tmp += "=;path=/aaa/;";
tmp += "expires=Thu,01-Jan-2000 00:00:01 GMT";
document.cookie = tmp;
}
画面遷移
A画面でCookie書込み⇒B画面でCookie情報を読込み
⇒C画面でCookie情報を読込み
現象:C画面でCookieが読込めない。
備考:C画面では読込みの前に別のCookieを削除しています。
B画面ではCookieの有無をチェックしているだけです。
何か疑問に思えることがありましたら教えてください。
No.2ベストアンサー
- 回答日時:
これは俺が実際に経験したことなのですが、書き込まれる直前のクッキー文字列の状態を alert() で表示してみてください。
ただし、俺が使ってんのもやっぱトホホからコピーしてきた奴なので、スクリプト自体は概略として間違ってないはずですが。
上位プログラムのミスで、まれに日付部分がごっそり抜けてたりしますので(^_^;
それから、俺が実際に使用している(動作確認済みの)JavaScript によれば、2030年12月31日は金曜日だそうですよ。
有難うございます。
>上位プログラムのミスで、まれに日付部分がごっそり抜けてたりしますので(^_^;
私も、最初はそれを疑ったのですがちゃんと有効期限が
入っているんですよね。
パソコンによってはCookieが消されることが無く正常に
動作しているんですが・・・。
同じパソコンでも同一動作を行って消える時と消えない時があって、訳がわかりません(泣)
私の持っているフリーカレンダーでは火曜日なんですが・・・(2030/12/31)
2000/1/1は土曜日ですね・・・。こいつの仕業?
No.3
- 回答日時:
返事が遅くなりました。
すみません。
参考URLを拝見させていただきましたが、標準規約があるわけではないので使えわないほうが良いということなのでしょうか?
ActiveXを使いたくないがためにcookieを使用しているのですが・・・
どうやら、IE6のプライバシー設定とコンパクトポリシーが関連しているようです。
後、有効期限の指定には必ずGMTで指定することが決まりのようですね。とりあえずこの2つで結果を確認します。
皆様本当に有難うございました。
この質問を締め切らせていただきます。
No.1
- 回答日時:
クッキーって、画面単位で制御するのが基本じゃなかったでしたっけ……?
IEだと複数画面にまたがって読めてしまうこともあるみたいですけど、それって仕様の範囲だったかなぁ……。
この回答への補足
すみません。
言葉足らずでした。
Cookieの有効期限を2030年に設定するとDocument&Setting\Cookieにファイルが作成されますが、ファイルが削除されているのです。
B画面では有効期限無しのCookieを作成していますが
これは、メモリ上に作成されセッションが切れた時点でメモリから削除されています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(Microsoft Office) パワークエリの複数ファイルのデータ統合について 3 2022/07/14 17:06
- 日本語 「徒歩圏内」「徒歩圏」の違い。ニュアンスも含め知りたい 5 2022/06/19 10:05
- Visual Basic(VBA) vba 重複データ合算 5 2023/07/05 18:55
- Google Drive Google Earth PRO が 次のメツセージが出て開けません 2 2022/10/08 18:46
- Chrome(クローム) google earth PROをクリックすると下記の表示がされPROが開きません 2 2022/07/28 10:25
- PHP phpでcookieがうまく保存されない 2 2023/08/02 16:40
- Excel(エクセル) VBAで組み合わせ算出やCOUNTIFSの処理を高速化したいです。 4 2022/04/07 02:38
- その他(ソフトウェア) ロイロノート(アプリ版)のログインができません。 2 2022/09/04 21:07
- YouTube ChromeブラウザでYouTubeの表示がおかしくなる 1 2022/07/21 14:44
- その他(法律) 肩書きを偽ってメールを送った場合、不正アクセス禁止法違反になるのか? 1 2023/02/18 08:35
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プログラミングで例えばゲーム...
-
画面を隠す・消す方法を教えて...
-
C言語で今まで表示していた画面...
-
ServletからHTMLページへの遷移...
-
画像の縦横比固定の計算方法。
-
三菱GOTの画面切り替えについて
-
Beautiful Soupのインストール...
-
system("cls")について
-
Java-jspの画面入力値保持について
-
CSV出力を画面から選択したデー...
-
JSPから出力されたHTML画面のcl...
-
登録後、呼び出し元ページに戻...
-
javaでプリントスクリーン(ス...
-
スマホ向けに「お気に入り登録...
-
Javaプログラミングの質問にな...
-
Android開発環境が構築できない...
-
Wi-Fiのパスワードが指定なしと...
-
URLはそのままで、リンクをクリ...
-
親ウィンドウの画面遷移
-
アクティブディレクトリ環境下...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
三菱GOTの画面切り替えについて
-
C# ログイン画面からメイン画面...
-
C言語で今まで表示していた画面...
-
画面遷移を行わずに同一ページ...
-
Java-jspの画面入力値保持について
-
プログラミングで例えばゲーム...
-
フロントエンドフレームワーク...
-
ASP.NET 画面遷移前の状態を保...
-
遷移元を判定したい!
-
画像の縦横比固定の計算方法。
-
FormのsubmitでFormの内容がnull
-
画面を隠す・消す方法を教えて...
-
HTMLのINPUTから画面表示
-
登録後、呼び出し元ページに戻...
-
ボタンを押したあとに画像を表...
-
Javascriptのhistory.back()が...
-
ServletからServletへの値渡し
-
セッション切れでのリクエスト...
-
アドレスバーに引数を表示させ...
-
system("cls")について
おすすめ情報