関数でログインおよび印刷セッションを取得できますが、他の関数をクリックすると、セッションが失われ、各関数にセッション セットの制約があるため、インデックス ページにリダイレクトされます。以下にコードを書きます。
$session = $this->session->userdata('logged_in');
redirect('user/user_dashboard');
そこにセッションを印刷すると、印刷され、ダイを削除した後に失われます。
関数でログインおよび印刷セッションを取得できますが、他の関数をクリックすると、セッションが失われ、各関数にセッション セットの制約があるため、インデックス ページにリダイレクトされます。以下にコードを書きます。
$session = $this->session->userdata('logged_in');
redirect('user/user_dashboard');
そこにセッションを印刷すると、印刷され、ダイを削除した後に失われます。
テストしているブラウザは Safari ですか? これは、iPad や iPhone の Safari に共通の問題であるという報告が多数ありましたが、過去に解決した Internet Explorer にもあります。
過去に Internet Explorer でこれに遭遇したとき、config.php で次のオプションを設定して修正しました。
$config['sess_match_useragent'] = FALSE;
どうやら、問題は、ユーザーがページをロードするたびに session_id() が再生成されるという事実によって引き起こされます。もうユーザーエージェントをチェックしないことで、明らかに、CodeIgniter のネイティブ セッション クラスはその特定のチェックを実行しなくなります。
うまくいったかどうか教えてください!