-1

我正在做这个动画工具,我从我的数据库中获取一个值,然后一张图片将动画到某个位置。我的问题是是否可以不断或每 5 秒检索一次数据?

不知何故像这样:

while(autoretreive){
$data = mysql_query("select * from ......");
}

从这里更新

感谢您的回答!让它更清楚地做什么!也许我可以更好地解释我在代码中所做的事情。

如前所述,我正在做这个动画程序,其中带有信息的球正在移动到不同的位置。我有一个值会在数据库中经常更新,我们称之为“城市”。

首先在上一页,我根据“城市”发布了我想要的信息球,我喜欢这样(简化):

$pid = $_POST['id'];
$pcity[0] = $_POST['city'];
$pcity[1] = $_POST['city'];
$pcity[2] = $_POST['city'];
//...

$while(autoretrieve) { // HOW TO? 

$data = mysql_query(select * from table where city == $pcity[0] OR $pcity == [1] //...);

while($rows = mysql_fetch_array($data)){

$city = $rows['city'];
$id = $rows['id'];

if($city == example1){
"animate to certain pos"; //attached to image
}
else if($city == example2){
"animate to certain pos"; //attached to image
}
}
}

因此,对于数据库中的每次更新,图像都会动画到一个新位置。所以5秒的时间间隔会很棒。我不是编码专家,因此对已弃用的代码感到抱歉。对 AJAX 也不是很熟悉,所以要导入代码中的内容是什么?页面不重新加载也很重要。只是从数据库中获取。

4

2 回答 2

0

你可以用ajax和javascript来做一个包含ajax代码的javascript函数来从数据库中检索数据

并在您的页面加载时使用 setTimeout 每隔 5 秒调用一次 ajax 函数

于 2013-09-20T13:10:32.140 回答
-1

您可以使用sleep功能来控制您想要获取数据的频率。

while(autoretreive){
  $data = mysql_query("select * from ......");
  //output your data here, check more in link about server sent events bellow
  sleep(5);
}

由于您尚未指定计划如何访问数据,我正在编写此答案,假设服务器发送事件,因为它们只是根据您的问题有意义的事件。

现在这一切都是根据你的问题,关于你打算如何使用数据还不是很清楚。同样,您很可能希望使用 ajax 获取数据,但服务器发送事件也是实现此目的的好方法。

并且不要使用已弃用的 mysql_*,切换到 PDO 或 mysqli_*

于 2013-09-20T13:09:22.023 回答