背景:我們正在啓動一個將由來自不同大學的學生參加的活動。一個網絡應用程序會報告參加活動的學生人數。實時更新Web系統 - Ajax,PHP,MySQL
基本的網絡佈局
我希望所需的佈局是明確的。這需要每5分鐘刷新一次,以便在新學生註冊時顯示。我使用Ajax setTimeout()方法完成了刷新部分 。我有表Student
。我使用的查詢是:
SELECT UNIV, STUDENT_NAME, STUDENT_EMAIL
FROM STUDENT
ORDER BY UNIV;
然而,主要的問題是確定時,在表中添加新行和顯示細節 問題1:目前,我在做什麼是有$currUniv
變量,它是指大學的當前價值。如果$currUniv
值和當前行獲取的不匹配,我創建一個新的行
代碼:在updater.php
function updateTable()
{
$currUniv = "";
while($currLine = mysql_fetch_array($results))
{
if (strcmp($currLine[0], $currUniv) != 0)
{
responseHTML .= "<tr id = \"{$currLine[0]}\">";
responseHTML .= "<td id = \"{$GLOBALS["univ"]}\">";
responseHTML .= "{$currLine[0]}";
responseHTML .= "</td>";
$currUniv = $currLine[0];
}
responseHTML .= "<td id = \"{$GLOBALS["studentname"]}\">";
responseHTML .= "{$currLine[1]}";
responseHTML .= "</td>";
responseHTML .= "<td id = \"{$GLOBALS["studentemail"]}\">";
responseHTML /= "{$currLine[2]}";
responseHTML .= "</td>";
if (strcmp($currLine[0], $currUniv) != 0)
{
responseHTML .= "</tr>";
}
}
}
首先,不顯示錶。我不認爲這是創建表格的最佳算法。任何人都可以提出任何其他方法來實現相同?
問題是我無法將新記錄附加到表中的現有行。即假設有一個新的用戶記錄進入A大學,我使用'tr id =「A」'標記將新記錄附加到表中,最終在HTML靜態內創建一個新行。 – 2011-04-28 12:45:13