2013-07-22 54 views
1

我怎麼能夠讓這個在我的網站上檢查我的新聞源是否有一組間隔的新狀態更新,然後顯示一個按鈕,說「 (?)新消息「,然後當它被點擊時,它只加載新的並將它們追加到同一個Feed div中?的PHP/MySQL/jQuery的/ AJAX類似Twitter的新聞提要更新

我想到了這樣做的一些方法,但他們都結束了併發症,因爲我不想替換已經加載的(因爲我有一個限制爲10,我有一個加載更多的按鈕在底部加載較早的帖子)。

+0

代碼從目前的飼料將方便 – EvilEpidemic

+0

我只是在尋找一些僞代碼給我身後這個生產一些邏輯,然後我就可以實現它。 – Engine

回答

2

您可以採取以下步驟:

  1. 做一個PHP腳本時,有沒有新的消息
  2. 寫Ajax調用使用jQuery的PHP腳本
  3. 檢查,返回新郵件或false無論回覆是返回false還是數據,在您的頁面上將其顯示爲某個div
  4. 如果返回的消息數量,請對其進行計數並刪除已加載的消息以保持您的限制10個消息
  5. 設置阿賈克斯的執行的間隔調用

只要給它一試。當你有一些代碼:編輯你的問題(與你的嘗試),我們可以幫助你進一步,如果有必要。 SO是不是地方,你可以 '訂單' 準備的隊友腳本;-)

PHP

if(amount of results from database after last update time) { 

    return messages 

}else{ 

    return false 

} 

jQuery的

send last update time with Ajax 

if(return of Ajax == false) { 

    do nothing 

}else{ 

    prepend messages to certain div 
    remove last messages to stay at limit of 10 messages 
    set last update time 

} 
+0

這是獲得我正在努力的新消息背後的邏輯。 – Engine

+0

你寫過什麼PHP了嗎?如果是這樣,請在您的問題中顯示。 – Pieter

+0

當然,我只是有一個while循環加載數據,對我來說可能看起來更容易發佈,但不是,只是脫離常規的feed結構:** ID |用戶ID |消息|日期**從那裏加載10個限制,然後我需要檢查以後的,並有一個按鈕說「加載新消息」,它會添加它們,但按鈕然後消失,並可以再次出現時,甚至有甚至添加更多新消息。 – Engine

0

如果你有已經做了長達feedsdiv,然後

假設你的新聞供稿就像

<div id="feed"><div> 

正在加載的飼料格「飼料」,然後

您可以添加新的飼料,如果你如下

$("#feed").append("YourNewFeedHTML"); 
0

一個可能的策略真的不希望刪除現有員額是允許超過通過的setInterval驅動調用上傳或設置一個更大限度15一樣爲它們可見消息的限制,只能在邊緣的情況下刪除郵件。另一方面是「收件箱」中的郵件狀態。引入「讀」狀態,將有助於管理收件箱,也許清晰讀取消息時,許多新的來了。我想的方法取決於消息的預期收益率,並在anycase你將不得不解決一些edget情況下,無論如何