スレッド表示 | フラット表示〕 全トピック 910 件中 4 番目 次≫ ≪前

session_regenerate_id 後でセッションが空になっている

created: 2010-03-12 23:49 | modified: 2010-03-13 17:39 | reply: 4

[4361] session_regenerate_id 後でセッションが空になっている

user: ただの課長 | created: 2010-03-12 23:49
よろしくお願いいたします。

ログイン処理をテストしています。

login.php でIDとパスワードを入力してもらい、自分自身へPOSTしてIDとパスワードをチェックします。入力が正しければ、header('location:~'); をして、index.php に遷移するようにしています。

location をする前に、session_regenerate_id(true) を実行し、その直後、sha1 を通した session_id を セッション変数に保存しています。

問題は location した index.php で起こります。
index.php の先頭では、sha1(session_id()) と 保存セッション変数 を比較するのですが、何故か 保存セッション変数 が空になっているのです。
さらにその時 session_id() が返す値が regenerate する前の session_id になっているのです。

session_regenerate_id しなければ問題なく動作するのですが、ログイン後に session_regenerate_id をした方が良いというネットの記事を見かけるので入れてみたのですが、入れると上記の状態になり先に進めません。

何が間違っているかご指摘いただけると助かります。
reply: 4362 返信 編集 削除
スレッド表示 | フラット表示〕 全トピック 910 件中 4 番目 次≫ ≪前
ページの一番上へ
twitterでつぶやく Googleグックマークに登録 Yahooグックマークに登録 livedoorクリップに登録 @niftyクリップに登録 はてなブックマークに登録 deliciousに登録 Buzzurlに登録 FC2ブックマークに登録
最近更新された掲示板トピックス
管理人Blog
Yahoo Search

最近更新したNote
PHPマニュアル
今日のブックマーク
PHPマニュアル関数検索
関数名を入力し検索ボタンをクリック↑