ホームページ >バックエンド開発 >PHPチュートリアル >このページでは何も操作を行わず、システムは 5 分後に自動的に終了します。

このページでは何も操作を行わず、システムは 5 分後に自動的に終了します。

WBOY
WBOYオリジナル
2016-06-23 14:08:221262ブラウズ

システムにログインしているユーザーが 5 分以内にアクションがない場合、システムから自動的にログアウトするようにしたいです。これを解決する方法を教えてください。
ページにアクションがないかどうかを確認するにはどうすればよいですか?


ディスカッション (解決策) に返信します

checklogin.php ページを作成します
タイムアウトするかどうかを判断する必要があるページにこのページを含めます

session_start()
header("content-type: text /html; charset =utf-8");
//タイムアウト時間、単位: 秒、ここでは 10 分に設定します。
$timeout=600;
$now=time();
if(($now-$_SESSION) ['session_time' ])>$timeout)
{
// タイムアウトしました。
unset($_SESSION['clientID']);
else
{
// まだタイムアウトしていません。 session_time']=time ();
}
if(empty($_SESSION["clientID"]))
{
echo "";
exit;
}

システムにログインするユーザーに、 5 分以内にアクションがなければ、システムから自動的にログアウトします。これを解決する方法を教えてください。

ページにアクションがないかどうかを確認するにはどうすればよいですか? では、ユーザーがログインしているかどうかはどうやって判断するのでしょうか?


ログインに成功したユーザーの場合は、セッションにユーザー名を入力し、セッションにデータがあるかどうかを確認できます。そうでない場合は、システムからの自動終了を実行します

checklogin.php ページを作成します

に含めます。タイムアウトしたかどうかを判断する必要があるページ


session_start();
//タイムアウト、単位: 秒、ここでは 10 分に設定されています。
$timeout=600;
$now=time();
{
//タイムアウト。 unset($_SESSION['clientID']);
}
else
{
//まだタイムアウトしていません。
$_SESSION['session_time']=time() }
if(empty($_SESSION["clientID "]))
{
echo "";
exit;
}

---------------------------- ---------
このメソッドは、SESSION で設定された時間が経過したかどうかを検出するために手動でのみ呼び出すことができます。
私が望むのは: システムにログインすると、ユーザー ID が SESSION に維持され、5 分以内に操作を行わないと、システムはもう操作する必要がないと判断し、自動的に操作を行います。切断します。
10分後にこれを行います。私が操作しているかどうかに関係なく、SESSION は強制的に削除され、システムが追い出されます


システムにログインしているユーザーは、5 分以内に操作がなければ自動的にシステムからログアウトしてほしいです。 。これを解決する方法を教えてください。
ページにアクションがないかどうかを確認するにはどうすればよいですか? では、ユーザーがログインしているかどうかはどうやって判断するのでしょうか?
----------------------------------
ログインすると、COOKIE または SESSION にユーザー ID が保存されますログイン後1440秒以内に操作がないと切断されるphpmyadminのようなものを実現したいと考えています。重要なのは、現在ページにアクションがないと判断する方法です。

接続自体はすでに切断されています

COOKIE または SESSION にログイン時間変数を追加します
再訪問したときに判断してください

接続自体はすでに切断されています

COOKIE または SESSION にログイン時間変数を追加します
彼が再び訪問したときに判断してください
---------

今ページ A で止まったら。電話をかけて、30 分後に戻ってきます。次に、ページ A 上の何かをクリックして、セッションの時間と比較して、有効期限が切れているかどうかを判断します。


はい、そうです

はい、そうです
---
モデレーター、QQ 1587232556 に追加してください。まだ理解できません。説明してもらいたいです。

セッションを例にします

ログイン時
$_SESSION['userid'] = $userid;
$_SESSION['time'] = time();

再入力時

if(time() - $ _SESSION[ 'time'] > 1440) {
//タイムアウト処理
}else{
$_SESSION['time'] = time() }

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。