2016-06-15 2 views
0

私はしばらくこの作業を続けてきました。セッションが動作していますセッションにアクセスまたは設定する各ページの上部にsession_start()があります。リダイレクト時にPHPセッションの半分が失われる

まず、ログインスクリプトに$ _SESSION ['id']、$ _SESSION ['user']、$ _SESSION ['start']という3つのセッション変数を使い始めました。 $ _SESSION ['patron']と$ _SESSION ['business']の2つのセッションを追加しました。ログインスクリプトが実行され、罰金リダイレクトされた後

$_SESSION['user'] = $user_info['email']; 
$_SESSION['id'] = $user_info['id']; 
$_SESSION['patron'] = $user_info['patron']; 
$_SESSION['business'] = $user_info['business']; 
$_SESSION['start'] = time(); 
redirect_to('../page.php'); 

すべてのセッションが設定されているが、私は再び去るリダイレクトするとき、私はそれらのいくつかを失うだけで$ _SESSION [「ユーザー」]、$ _SESSION [「スタート」]と$ _SESSION ['id']セッションがまだ設定されています。私はなぜいくつかだけがまだ設定され、他は失われている理由を理解していません。

別の問題は、セッション$ _SESSION ['start']の名前を$ _SESSION ['time']に変更して、ログインスクリプトの実行後にリダイレクトするとそのセッションが失われることです。任意の提案が理解されるであろう

function redirect_to($location = NULL) { 
    if($location != NULL) { 
     define('URL', 'http://www.website.com/'); 
      header('Location: ' .URL. $location); 
     exit(); 
    } 
} 

は、ここに私のリダイレクトスクリプトです。

+0

出力バッファを使用していますか?すべてのページにログインスクリプト – bassxzero

+0

session_startも表示しますか? –

+0

あなたのスクリプトはウェブサイトの異なるサブディレクトリにありますか? – Barmar

答えて

0

SOLVED !!!

私はこのプロジェクトの開発に長時間を費やしてきました...私はセッションをパージする機能を持っていることを忘れていました。フォームの提出によって作成されたセッションがアンセットされます。私は無視するセッション名を持っている配列を持っており、これらを残しました。したがって、ページがリフレッシュされるたびに、それらのセッションの設定が解除されます。私はあなたの時間を無駄にしてとても残念です。私はそれを完全に忘れてしまった。私は約2時間そのことに取り組んだ。

関連する問題