gpt4 book ai didi

php - 实时更新 Web 系统 - Ajax、PHP、MySQL

转载 作者:行者123 更新时间:2023-11-29 00:56:36 26 4
gpt4 key购买 nike

背景:我们正在发起一项事件,来自不同大学的学生将参加。 Web 应用程序将实时报告注册该事件的学生人数。

基本的网页布局是

enter image description here

我希望所需的布局清晰。这需要每 5 分钟刷新一次,以便在新学生注册时显示。我已经完成了刷新部分使用 Ajax setTimeout() 方法。

我有表Student。我正在使用的查询是:

  SELECT UNIV, STUDENT_NAME, STUDENT_EMAIL
FROM STUDENT
ORDER BY UNIV;

但是,主要问题是确定何时在表中添加新行并显示详细信息问题 1:目前,我正在做的是使用 $currUniv 变量,它指的是 University 的当前值。如果 $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>";
}
}
}

首先,表格没有显示。我不认为这是创建表的最佳算法。任何人都可以建议我实现相同目标的任何其他方法吗?

最佳答案

如果大学名称与上一行中的大学名称匹配,那么看起来您没有打开足够的 tr 和 td 标签。确保在两种情况下生成的标签数量完全相同。最好使用其他。单元格可能为空,但您必须生成它们。

此外,您是否有正当理由不按一所大学的学生姓名对结果进行排序?这只是查询中的一个小改动 - ORDER BY UNIV, STUDENT_NAME。没有它,你就不能依赖 mysql 给你的顺序,它只会按照它认为最快的顺序抛出学生,尤其是当表变大时。

如果这是您唯一需要更新的东西,那么它还不够复杂,不足以让您有理由将您的代码更改为您必须从头开始学习的内容。

关于php - 实时更新 Web 系统 - Ajax、PHP、MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5812986/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com