我正在尝试创建一个FB新闻源,但用于显示数据库中的内容。 我的代码已经读取了表的行数,但是在更新html的内容之前需要刷新页面。
这是我的代码:
我的html文件的一部分:
<section id="reportcontent"></section>
<script>
(function refreshNews()
{
$("#reportcontent").load("php/ajax.php");
})();
setInterval('refreshNews()',1000);
</script>
ajax.php的内容
<?php
require("database.php");
$sql = "SELECT * FROM report";
$res = odbc_exec($conn,$sql);
while($feedItem = odbc_fetch_array($res))
{
echo "hello! <br>";
}
?>
正如您所看到的,我桌子的每一行都会回显一个问候文本。但是为了查看我需要刷新页面的新行数。谢谢你的帮助!
答案 0 :(得分:2)
这应该有效。您将函数名称作为字符串传递给setInterval,方法是将其包装在''中。它应该只是调用
这样的函数public class MotorDetails
{
public int Id { get; set; }
public string Name { get; set; }
public string Make { get; set; }
public string Model { get; set; }
public string Year { get; set; }
public string Kilometers { get; set; }
[JsonConverter(typeof(StringEnumConverter))]
public Color Color { get; set; }
}
也不确定这只是一个示例,但php代码不会为表生成行。
只是一个换行符。
同时我们正在努力。使用Ajax调用的间隔是不好的做法。原因是请求可能需要比间隔时间更长的时间,并且最终会同时运行多个调用。在AJAX.load()
的回调函数中使用setTimeout
setInterval('refreshNews',1000);
function refreshNews()
{
$("#reportcontent").load("php/ajax.php", function(){setTimeout(refreshNews, 1000);});
}();
window.onload= function(){
refreshNews();
}