• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:jQueryのloadでアラートやサウンドを鳴らす)

jQueryのloadでアラートやサウンドを鳴らす

このQ&Aのポイント
  • jQueryのloadを使ってcheck.phpを監視し、新規の発言があった場合にアラートやサウンドを鳴らす方法について教えてください。
  • フォームからの発言をMysqlに登録し、定期的にリロードして表示するテストを行っていますが、新規の発言があった場合にアラートやサウンドを鳴らす方法が分かりません。
  • jQueryのloadでcheck.phpを監視しているのですが、新規の発言があった際にアラートやサウンドを鳴らす方法を教えてください。

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

  • ベストアンサー
  • ONEONE
  • ベストアンサー率48% (279/575)
回答No.2

問題ないと思いますよ。 と、言われても心配は拭えないと思うので、ご自分でしっかり検証はしてみてくださいね。 check.phpは複数人の発言?を登録したDBから30秒ごとに取得します。 ここに個人は関係ないですね。 tableに作成日時や更新日時は持ってますか? 持ってなければレコードのidでもいいと思います。 ただし、このままの実装では自分の発言に対しても、アラートが発生しますので、その辺りが問題なら考慮してあげてください。

bluelagoooon
質問者

お礼

重ね重ねありがとうございます。 sessionとあったので、PHPのsessionのようなものだと勘違いし頓珍漢な返答をしてしまいました。 responseTextで返ってくるんですね。 responseTextの返り値が複雑だったので色々勉強し、jsonで返すようにして解決しました。 ONEONE様のご回答がきっかけで深く勉強する事ができました。 ありがとうございました。

その他の回答 (1)

  • ONEONE
  • ベストアンサー率48% (279/575)
回答No.1

sessionStorageかcookieに毎回、最新時刻を上書き更新して、 前回のものと比較して新しくなってたらalert()という感じでいいんでないでしょうか。 $("#container").load("./check.php", function(responseText){ //前回の最新レコードアップデート時刻を取得 var last_update = sessionStorage.getitem('update'); //今回の最新レコードアップデート時刻を取得(responseTextの中から探す) var this_update = '20140823140912': //セッションに保存 sessionStorage.setitem('update', this_update ); // 前回と今回を比較する : : : });

bluelagoooon
質問者

お礼

ご回答ありがとうございます。 ご教示頂いた内容からsessionStorageを勉強しています。 Mysqlへ書き込まれる発言は私のみではなく、チャットのように複数人が書き込むのですが、この方法でいけますでしょうか?

関連するQ&A

専門家に質問してみよう