加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 从Mysql表中自动刷新DIV内容 – 一次一个

发布时间:2020-12-13 15:59:15 所属栏目:PHP教程 来源:网络整理
导读:我需要每5秒自动刷新一次 mysql数据表中的内容,但是一次只显示一条不同的记录,遍历无限循环中的每条记录. 我加载news.php,有这个js: script type="text/javascript"var auto_refresh = setInterval(function () { $('#canvas').load('content.php').fadein(
我需要每5秒自动刷新一次 mysql数据表中的内容,但是一次只显示一条不同的记录,遍历无限循环中的每条记录.

我加载news.php,有这个js:

<script type="text/javascript">
var auto_refresh = setInterval(function () {
    $('#canvas').load('content.php').fadein("medium");},5000);
     // refresh every 5 seconds
</script>

content.php具有数据库连接

$query_Recordset5 = "SELECT * FROM news"; 
$Recordset5 = mysql_query($query_Recordset5,$connection) or die(mysql_error());
$row_Recordset5 = mysql_fetch_assoc($Recordset5);
$totalRows_Recordset5 = mysql_num_rows($Recordset5);

以及回显到页面的字段.

我知道你必须创建一个计数器并且每次都带回一个不同的记录,但我很难用它.

谢谢

解决方法

如果您的表具有自动增量字段(例如“id”).首先传递page.php和id为0,因此它将获取大于0的自动增量字段,然后通过jquery传递那些字段ID.当您再次发送它时,它将不会包括在内,因为您将使用大于号.

if num_rows == 0检查是否有任何字段,如果没有,那么它将假设你发送的自动增量字段是最后一个,然后它将运行带有第一个自动增量值的sql语句.

<?php
// page.php
$id = (int) $_REQUEST['id'];
$sq = "select * from news where id > ".$id." order by id asc limit 0,1";
$qu = $con->query($sq);

if ($qu->num_rows == 0) {
    $sq2 = "select * from news order by id asc limit 0,1";
    $qu2 = $con->query($s2);
    while ($fe = $qu->fetch_assoc()) {
       echo $fe['id']."|".$fe['content'];
    }
} else {
    while ($fe = $qu->fetch_assoc()) {
       echo $fe['id']."|".$fe['content'];
    }
}
?>

<script>
$(document).ready(function() {
    setInterval(function(){ updateNews(); },5000);
});
function updateNews() {
    var id = 0;
    id = $("#hidden-id").val();        

    $.get("page.php?id=" + id,function(data) {
       // I use $.get so that I can split the data that it returns before populating 
       // the #canvas. This way we can strip off the first part which is the auto 
       // increment
       var ref = data.split('|');
       $("#hidden-id").val(ref[0]);
       $("#canvas").html(ref[1]);
    });
}
</script>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读