1

オンラインのユーザーを保存するmysqlデータベースがあります。非アクティブなユーザーを検出する(ステータスを「オフライン」に設定する)ために、一定期間後にイベントをトリガーする効率的な方法はありますか?ユーザーが最後にアクティブだった時刻(TIMESTAMP値)をテーブルに保存しています。

ありがとう!

4

1 に答える 1

4

phpスクリプトを定期的に実行するには、多くの解決策があります。

  • cronジョブを使用します(これは、サーバーがあることを意味します)。これを行う方法を学ぶには、このリンクにアクセスしてください
  • MySQLが提供するイベントスケジューラを使用します。
  • サーバーがない場合は、タスクを定期的に起動するプロバイダーを使用できます。最もよく知られているのはWebcron.orgです(無料ではありません)。
  • 他の解決策として、アクションを実行する適切なタイミングを待っている間にバックグラウンドで実行されるスクリプトPHPを作成します。set_time_limit()そのためには、関数とにアクセスできる必要がありますignore_user_abort()。次に、継続的にループし、何かすることがあるかどうかを瞬間的にチェックするスクリプトを作成します。
于 2012-08-06T14:29:22.993 に答える