PHPWebアプリに「他のアクティブなセッションを閉じる」ボタンを追加したいと思います。
MySQLテーブルで(userid、sessionid、expiration)を追跡し、次の方法でセッションを強制終了することを考えています。
$currentsessionid=session_id();
foreach($othersessions as $session){
sessionid($session['sessionid']);
session_start();
session_destroy();
}
mysql_query("DELETE FROM sessions WHERE userid = $currentuserid AND sessionid <> $currentsessionid");
session_id($currentsessionid);
session_start();
ユーザーがログに記録されている場合、各session_start()の後にテーブルも更新され、期限切れのエントリが削除されます。
期限切れのエントリは、ユーザーがログインするたびに削除されます。
これは適切なアプローチですか?助言がありますか?