ユーザーがidle for more than 5 minutes
かどうかを確認したい場合は、be redirected to login page
となります。私はこれを行うベストプラクティスを知らない。私のソリューション。 codeigniterでコードします。ユーザーがアイドルコードネイターであるときに期限切れになったセッションを確認する方法
答えて
これはjQueryの/ JavaScriptの/アヤックスとCodeIgniterの機能の組み合わせで行うことができます。
JS
<script type="text/javascript">
var currentSessionValue = 1;
// pseudo code
setTimeout(checkSession, 5000);
function checkSession() {
$.ajax({
url: "CheckSession/check_session", //Change this URL as per your settings
success: function(newVal) {
if (newVal != currentSessionValue);
currentSessionValue = newVal;
alert('Session expired.');
window.location = 'Your redirect login URL goes here.';
}
});
}
</script>
CodeIgniterの
class CheckSession extends Controller{
public function __construct(){
session_start();
}
public function check_session(){
//Below last_visited should be updated everytime a page is accessed.
$lastVisitTime = $this->session->userdata("last_visited");
$fiveMinutesBefore = date("YmdHi", "-5 minutes");
echo date("YmdHi", strtotime($lastVisitTime)) > $fiveMinutesBefore > 1 : 0;
}
}
last_visited
タイムスタンプをセッション変数として保存するだけです。ユーザが次に訪問するときに、現在のタイムスタンプとセッション中のタイムスタンプとの違いをチェックします。 5分以上経過している場合は、ユーザーにサインアウトします。
$this->load->library('session');
$this->session->set_userdata(array(
'last_visited' => time()
));
すべての機能についてチェックしなければなりませんか? –
これは 'class xxxx extends MY_Controller {}'のように書くことができます。MY_Controller.phpでは、MY_Controller'の__constructでこのログインを指定します。すべてのアクションに対して自動的に呼び出されます。 – kawadhiya21
ありがとう、私は上記の答えとあなたの答えを組み合わせて、それは動作します! –
私は単純にして、セッションの有効期限を確認し、私は、ログイン
に格納された変数を読み取ろうと、私はこの中に置かMy_Controller
をフォルダapplication/core
にコピーし、これに基づいて他のコントローラをすべて拡張します。クラスの
、私は私が要求を行うときに、セッションが、有効期限が切れている場合__construct
で私は、ので、この
if (!$this->_is_logged_in()) {
$this->_log_out("Session Expired", base_url("login"));
}
を行い、私のクラスでは、この機能
function _is_logged_in()
{
return !empty($this->session->userdata('user_id'));
}
を持っています5分ごとに確認する必要はありません。
- 1. Firebaseでセッションが期限切れになっていないかどうかを確認する方法
- 2. セッションが期限切れになっているかどうかをasp.netで確認する方法
- 3. セッションが有効期限切れになったときにユーザーをログオフするセッション検証フィルター
- 4. セッションが期限切れになったときにPHPを実行する
- 5. 日付が期限切れになったかどうかを確認する方法はありますか?
- 6. SpringMVCでセッションが期限切れになったときにエラーページを表示
- 7. セッションがAJAXで期限切れになったときにログインページに移動
- 8. Java Springブート/スプリングセキュリティ(HttpSecurity)でセッションが期限切れになったときに自動ログアウトする方法
- 9. セッション(JWT)がReact/Reduxで期限切れになったときに警告する方法
- 10. セッションが期限切れであることを知るには?
- 11. セッションがasp.netで期限切れになったときを検出する方法は?
- 12. Android Geofenceが期限切れになったときに知る方法?
- 13. cookiecontainerでCookieが期限切れになっていないかどうかを確認する方法は?
- 14. ポップアップウィンドウでセッションが期限切れになり、認証に失敗しました
- 15. セッションを設定する方法ASPで期限切れにならない
- 16. クッキーが期限切れになったときjquery display fancybox
- 17. Laravel 5.2:キャッシュが期限切れになったときのイベント
- 18. asp.netセッションが期限切れであることを確認するための最も簡単で直接的な方法は?
- 19. 春のセキュリティでセッションが期限切れになったときに、自動的にログインにリダイレクトします。
- 20. クリックしたときにs3のURLが期限切れになる方法
- 21. ユーザーパスワードが期限切れになったとき、またはユーザーが次のログオン時にパスワードを変更する必要があるときに、ADユーザーの資格情報を確認する方法
- 22. phpセッションの期限切れ時にmemcached期限切れキーを設定することはできますか?
- 23. Parse Serverで非アクティブなセッションを期限切れにする方法
- 24. 数秒後にPHPセッションがランダムに期限切れになる
- 25. 有効期限が切れたパスワードをアクティブなディレクトリで確認する
- 26. セッションタイムアウトを処理し、ページが期限切れになったときにログインページにリダイレクトする方法
- 27. セッションが期限切れになる前に警告ユーザー、セッションを更新するオプション
- 28. PHPセッションは正確に120秒で自動的に期限が切れる
- 29. アクセストークンがGoogle Apiで期限切れになるかどうかを確認する方法
- 30. ASP MVC 3:ユーザーがセッションを終了した後にセッションの有効期限が切れるようにする方法はありますか?
$ this-> session-> userdata( 'is_logged_in')はどこですか?から来る?あなたはそれを設定しません。 –
is_logged_inインデックスの詳細を編集しました。 – Rahi
私はあなたの答えを2番目の答えと組み合わせて、それは動作します!ありがとうございました。 –