所以我有一个下载按钮,它记录了它点击的次数并更新了txt文件中的数字。然后该数字显示在index.php上 有没有一种方法可以让我的数字每5秒更新一次,而整个页面都不会刷新? (我已经阅读了很多其他帖子,但我不理解它们)
http://go-create.net(如果您想查看我使用过的代码,可以查看页面来源)
谢谢,
插口 编辑:有点像http://minecraft.net上的实时更新下载次数,但它不需要有一个很好的数字更改动画)
答案 0 :(得分:0)
您应该使用ajax来执行此操作,这很容易使用jQuery
例如:
$.ajax({
url: '/number.php'
success: function(response){
$('div#number').text(response)};
});
number.php是一个返回您要显示的数字的脚本。 div#number引用要更新的html元素。要使用jQuery,您必须包含jQuery库。
答案 1 :(得分:0)
回答你的问题让jQuery在你的服务器上提取PHP脚本的请求。在下面的示例中,每5秒调用一次PHP脚本。 check_clicks.php
通过GET方法接收item_id
,根据需要对其进行处理,并回应我们在data
(function update_clicks() {
$.ajax({
type: 'GET',
url: '/check_clicks.php',
data: {item_id: item_id},
complete: function (data) {
$('#result_div').html(data);
setTimeout(update_clicks, 5000);
}
});
})();
<小时/>
check_clicks.php
假设您有一张名为download_stats
的表格。你的表安排如
item_id | clicks
--------+-------
1 | 56
要检索您需要执行查询的点击金额
$db = //your database connection here
$query = mysqli_query($db, "SELECT clicks FROM download_stats WHERE item_id = '$_GET['item_id']' LIMIT 1");`
while ($data = mysqli_fetch_assoc($query)
{
echo $data['clicks'];
}