2014-04-25 36 views
-1

最近,我用PHP創建了一個聊天框。沒有問題,但它不是很方便,因爲我需要手動刷新頁面以檢查新消息。PHP聊天框:如何自動更新

我試圖找到一種方式,以便聊天框會自動檢查新消息,它會顯示新消息。

但是,我能做些什麼?我可以

  1. 使用作爲聊天框,並找到一種方法來刷新iframe;
  2. 使用javascript檢查SQL數據庫(這是不安全的,在另一個問題中討論,但有可能)
  3. 使用ajax - 我不知道任何關於它,所以我不能這樣做。

以上哪種方法最適合(如果可能,最簡單的一種)?

回答

2

阿賈克斯將是你最好的選擇,但相信我,這不是那麼糟糕。

我討厭把它變成一個教程,但這裏有一個大綱。

  1. 創建一個php文件,獲取消息,如果有的話,並以某種方式打印它們。也許一些列表項? echo "<li>$message</li>"

  2. 創建一個jquery間隔,每隔一秒鐘檢查一次消息。

  3. 有你的間隔調用函數的代碼是這樣的:

    $.get("get_messages.php", function(data) { //data contains the file's output 
    
    $("#messages-box").append(data);//insert the new messages into a div in your html 
    
    }); 
    

這真的就是這麼簡單!

+0

我同意你的觀點,但是我會嘗試iframe和javascript soution。我會嘗試一下,我忘了告訴你,它與SQL數據庫連接,所以我不能使用你的方法。 – Jamie

+0

@Jamie爲什麼連接數據庫會成爲問題?這可以在get_messages.php中完成。 –

+0

我可以使用普通的JavaScript間隔嗎?我不能使用jQuery。我對此不甚瞭解。 – Jamie

0

Ajax只是javascript的一個組件。要使用php和javascript創建聊天框,最簡單的解決方案是使用setInterval函數刷新聊天框