如何在没有刷新页面,单击按钮,更改等的情况下显示mysql数据

时间:2012-12-17 10:35:20

标签: php ajax jquery

我想显示我的mysql数据没有刷新页面,点击按钮,更改等。如果有人从任何地方提交mysql数据,那么我可以看到他/她提交的数据,无需刷新,更改,单击。数据来自我自动。我知道jquery,ajax,php但我找不到解决这个问题的方法。如果您有任何想法,请与我分享。谢谢

4 个答案:

答案 0 :(得分:1)

制作PHP文件

使用example.php

// connect sql && make query

$dataArray = array();
// After you connected and prepared the query show it
while($fetch = mysql_fetch_array($query) {
    $dataArray[] = $fetch;
}

// Put data in a json object for JS
$dataArray = json_encode($dataArray);

// Echo it
echo $dataArray;

用jQuery或任何其他js lib调用它。

$(this).get('example.php'), function(data) {
    alert(data); // You'll see the json object in here <<
    // Then do magic stuff with it.
});

答案 1 :(得分:1)

为了做到这一点,你需要使用JavaScript函数setinterval(function(){}设置计时器,时间以毫秒为单位)。将时间设置为5000,持续5秒或根据需要设置,以便代码每5秒运行一次。

答案 2 :(得分:0)

所以你知道jQuery,AJAX和PHP,但你不知道如何更改数据?至少尝试创造性......

首先,您需要一个获取数据库数据的PHP页面。

header('Content-Type: application/json');

require 'config.php';

$json = array(
    'data'  => array()
);

$result = mysql_query('SELECT * FROM `my_table`');

while($row = mysql_fetch_assoc($result)) {
    array_push($json['data'], $row);
}

echo json_encode($json);

您可能会注意到,我希望将数据作为JSON传输 - 因此header()json_encode()调用。

如果您转到该页面,您将看到数据库中的结果。现在您可以使用jQuery AJAX调用该文件。如果使用间隔,则可以每x秒获取一次新数据。

setInterval(fetchData, 10000); // get data every 10 seconds

function fetchData() {
    $.getJSON('myfile.php', function(data, textStatus, xhr) {
        $.each(data.data, function(index, value) {
            // do something with every row

            console.log(value.id, value.content, value.date);
        });
    });
}

瞧!


我可以进行大量讨论,程序员 创意。这完全是我的观点。了解一种语言并不能使你成为一名优秀的开发者。如果它可以帮助你,拿一张纸,制作一个流图或其他东西。

答案 3 :(得分:0)

你可以使用Reverse Ajax或javascript函数setinterval,如果数据自动最佳选项是使用Reverse Ajax