ユーザーが PHP にログインするときに、セッション Cookie とその寿命をリセットしようとしています。それはかなり些細なことに聞こえますが、私はまだそれを正しくするのに苦労しています.
ページが読み込まれるとき、ユーザーはすでに Cookie を持っている場合と持っていない場合があります。彼が持っている場合は、それを削除して sessionId をリセットしたいと思います。そうでない場合は、適切な寿命を持つ新しいものを彼に与えます。session_status()
使用しているPHPのバージョンにより使用できません。
これが私が思いついたものですが、ユーザーが既にセッション Cookie を持っている場合は機能しません。
if (isset($_COOKIE[session_name()])) setcookie(session_name(), false);
session_set_cookie_params(2678400); // sets cookie life to one month
session_start();
// do stuff
ユーザーがログインすると、通常、古い Cookie は削除されますがsession_start()
、新しい Cookie は配信されません。セッション ID 作成のロジックを手動で実装することなく、新しい Cookie を強制的に配信する方法はありますか?
助けてくれてどうもありがとう