私のアプリケーションでは、主にphpであるかどうかを知りたいのですが、これは、ユーザーがログオフするまでサイトにログインし続けるための最良の方法です。トークン、セッションライフ、クッキーなどでしょうか?
現時点では、これが私のログインおよびログオフシステムの仕組みです。
ユーザーがログインすると、詳細が$_SESSIONに保存されます。
if (isset($_SESSION['teacherid'])) {
$userid = $_SESSION['teacherid'];
}
if (isset($_SESSION['teacherusername'])) {
$username = $_SESSION['teacherusername'];
}
次に、すべてのスクリプトに、セッションライフが12時間続く以下のコードが含まれています。
<?php
ini_set('session.gc_maxlifetime',12*60*60);
ini_set('session.gc_divisor', '1');
ini_set('session.gc_probability', '1');
ini_set('session.cookie_lifetime', '0');
require_once 'init.php';
session_start();
?>
init.phpは以下のとおりです。
<?php
session_save_path('Session');
?>
12時間後、次にユーザーがページを更新すると、セッションが破棄されるため、ログオフページに移動します。
if ((isset($username)) && (isset($userid))){
session_destroy();
echo "You have been Logged Out | <a href='./home.php'>Home</a>";
}
else {
echo "You are Not Logged In";
}
明らかに、ユーザーがログアウトページをクリックすると、上記のスクリプトに移動します。
しかし、これはそれを行うための良い方法ですか?適切なWebアプリケーションを見ると、ユーザーを数日間ログインさせ続けることができるので、はるかに便利な方法はありますが、これをどのように行うのでしょうか。
ありがとう