私はuser_id
でセッションを設定するログインスクリプトを実行しています。しかし、ユーザーが私に変数を割り当てたRemember meチェックボックスをチェックして$remember = $_POST['remember'];
になってもクッキーを設定したいのですが、クッキーが設定されていません。 Remember meボックスをチェックすると、セッションが開始されますが、ブラウザを終了して戻ってくると、再度ログインしてCookieが設定されていないことが示されます。今度はuser_id
のセッションとuser_name
のクッキーを保存しました。私は、彼らが完璧に動作し、すべての変数はので、ここで割り当てられているため、HTML部分は、データベースから関連すると自分のログインの検証であるとは思わないセッションとクッキーを設定するコードです:セッションとは別にクッキーを設定する方法
if($password == $pass_word){
session_start();
$_SESSION['user_id'] = $user_id;
if($remember == "on"){
setcookie("user_name", $user_name, time()+2592000);
}
}
そして、これは私ですloggedin()
機能:
function loggedin(){
if((isset($_SESSION['user_id'])) || ((isset($_COOKIE['user_name'])) && (isset($_SESSION['user_id'])))){
return true;
} else {
return false;
}
}
しかし、それは唯一のクッキーなしのセッションを設定します。私は何が間違っているのですか?
あるので
session
を再起動する必要がありました。実際に(設定されませクッキーは/が保管されていないHTTPヘッダではないんブラウザで)、または再度ログインしないでください。私はあなたの状態が一種のファンキーに見えるので、後者を疑う。 – ArSeN'if($ password == $ pass_word){'はファイルの先頭ですか?投稿を編集しない場合は、上記の残りの部分を追加してください。 – Andreas