• ベストアンサー

チャットでの自動ログアウト(PHP+MYSQL)

今研究でPHPとMysqlを使ったチャットを作ってるんですが、どうやればチャットのブラウザーを消すと同時に退出し参加者に反映するのかわかりません。どんな小さな事でもいいので教えてください。 ちなみにMysqlのdtabase内のtableに参加者のニックネームとログイン時間のを示したものがあり、コメントをするとログの時間は更新されます。

質問者が選んだベストアンサー

  • ベストアンサー
  • dell_OK
  • ベストアンサー率13% (766/5720)
回答No.2

動作確認はしていませんが、JavaScriptを使って、Unload時にログアウトのphpを呼ぶと言う方法はどうでしょうか。 <body onUnload="window.location='logout.php'"> logout.phpで、MySQL内のログイン情報を削除すればいいかと思います。 他の参加者からは、発言時や、オートリロードの機能で、退出されたように見えるようになるのではないでしょうか。

cs007055
質問者

お礼

本当にありがとうございます。試してみます。また、研究で迷ったら質問あげますので、また機会があったらコメントください。

その他の回答 (1)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

>チャットのブラウザーを消すと同時に退出し参加者に反映する そういうのをhttpで実現するのは無理があります。 サーバーへの負荷を度外視してよいのであれば、 ajaxなどで生きているという情報を各クライアントが定期的に 送りつけ、一定期間以上アクセスがない場合は、ログアウトした と判断するくらいでしょうか・・・