一度に特定のページに2人だけ?
-
05-10-2019 - |
質問
かなりの量のセキュリティとともにこれをどのように実装するかは本当にわかりません。 mysqlの行に基づいて誰かまたは2人がいるかどうかを知りたいです。これら2人は完全に匿名です。 XMPPサーバーがセットアップされていますが、それがMySQLにどのように統合されるかはわかりません。すでに個別のログインシステムがあります。サーバー側はPHPで行われます
編集:特定のページで2人だけを許可したいのですが、それだけです。しかし、彼らがページを離れる場合、私は彼らが去ったかどうかを判断する必要があります。
解決
問題は、誰かがブラウザを閉じた場合、ページを離れたことを通知される方法がないということです。
あなたができることは、ページにAJAXリクエストを持っていることです。これにより、10〜15秒ごとにセッションIDを含むサーバーにリクエストを送信します。テーブルにタイムスタンプとセッションIDを記録すると、データベースを照会して、過去15秒でどのようなリクエストが行われたかを確認できます
他のヒント
Onbeunloadイベントを使用してソリューションを試してみて、ユーザーがページを離れたことを通知してください。 ユーザーがWebページを離れるときに検出する最良の方法.
「ページ」と言うと、ブラウザ側の検証について話しているので、ブラウザはユーザーがまだそのページにあることを伝えることができるはずです。これをやろうとしている場合は、WaitforatrainのコメントのようなAjaxが必要です。しかし、いくつかの抜け穴があります:
1)ブラウザがJavaScriptを無効にしている場合はどうなりますか?
2)ページを読み込んだ後にユーザーが非アクティブである場合はどうなりますか?ページを「生きている」べきですか?