Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 数据库上存在新行时自动更新div_Javascript_Php_Jquery_Mysql_Ajax - Fatal编程技术网

Javascript 数据库上存在新行时自动更新div

Javascript 数据库上存在新行时自动更新div,javascript,php,jquery,mysql,ajax,Javascript,Php,Jquery,Mysql,Ajax,我试图在用户访问页面之前检索表中存在的所有行,在用户访问页面之后,使用自用户访问页面以来添加到表中的任何数据行更新div(例如Whatsapp,其中整个conva可见,新消息添加到底部) 这就是到目前为止我在使用Ajax时所做的,但我不知道从这一阶段开始我将走向何方。它当前只显示最新的记录(如果我在第二个文件中手动设置时间戳),但不显示它之前的所有其他记录。理想情况下,我应该将时间发布到第二个文件中 如何修改代码以获得所需的功能 显示(autoload.php) 获取数据(autoload2.p

我试图在用户访问页面之前检索表中存在的所有行,在用户访问页面之后,使用自用户访问页面以来添加到表中的任何数据行更新div(例如Whatsapp,其中整个conva可见,新消息添加到底部)

这就是到目前为止我在使用Ajax时所做的,但我不知道从这一阶段开始我将走向何方。它当前只显示最新的记录(如果我在第二个文件中手动设置时间戳),但不显示它之前的所有其他记录。理想情况下,我应该将时间发布到第二个文件中

如何修改代码以获得所需的功能

显示(autoload.php)

获取数据(autoload2.php)


注意:上面用于查询的时间不起作用,只有当它用时间戳硬编码时才起作用。

我认为您需要移动

var time = (new Date).getTime();
发挥你的作用

因为你的时间变量没有改变

var interval = 1000;  // 1000 = 1 second, 3000 = 3 seconds
function doAjax() {
    var time = (new Date).getTime();
    $.ajax({
        type: 'POST',
        url: 'autoload2.php',
        dataType: 'json',
        data: 'time='+time
    }).done(function(response){
        console.log(response);
    });
}

setInterval(doAjax, interval);
在php中:

$data = Array('name' => 'name of last row');
header('Content-Type: application/json');
echo json_encode($data);

我已经根据您的建议更新了代码,但数据仍然没有变化。
var interval = 1000;  // 1000 = 1 second, 3000 = 3 seconds
function doAjax() {
    var time = (new Date).getTime();
    $.ajax({
        type: 'POST',
        url: 'autoload2.php',
        dataType: 'json',
        data: 'time='+time
    }).done(function(response){
        console.log(response);
    });
}

setInterval(doAjax, interval);
$data = Array('name' => 'name of last row');
header('Content-Type: application/json');
echo json_encode($data);