如何使用数据库中的值执行javascript活动?

时间:2015-07-22 06:15:52

标签: javascript php mysql

我希望将点的颜色更改为红色,蓝色和绿色,具体取决于数据库中每隔5秒后随机更新的值。我尝试过点击鼠标,但是如果我们希望在5秒后页面刷新时颜色会自动更改,可以做些什么?

例如,如果从数据库检索的值在30-40之间,我希望它是蓝色

其他40-60让它变成绿色 和60-70是红色的

else
{
header( "refresh:5;url=temperature.php" );
mysqli_query($con, "UPDATE sensor SET stemp=ROUND(RAND() * 40) + 30");

$res=mysqli_query($con,"Select * from sensor where sid='s1'");
while($row = mysqli_fetch_array($res))
{
    echo "<font color='#F87431'>.<h1>". $row['stemp']." is the temperature of first sensor "."<br>"."</h1>";

} 

?>
<html>
<body>

<h1>Department A</h1>

<img id="myImage" onclick="changeImage()" src="red.png" width="100" height="100">
<script>
function changeImage() {
var image = document.getElementById('myImage');
if (image.src.match("red")) {
    image.src = "blue.png";
} else {
    image.src = "red.png";
    }
}
</script>

</body>
</html>

1 个答案:

答案 0 :(得分:0)

选项1

只需使用元标记每5秒刷新一次页面。刷新时,它将再次查询数据库并获取当前颜色。

    <meta http-equiv="refresh" content="0;URL='<?= $_SERVER['PHP_SELF']; ?>'" />

选项2

使用ajax获取新颜色。在jQuery中,您可以设置5秒的间隔并使用该间隔执行特定操作。

setInterval需要字符串格式的函数或可执行代码。

setInterval($.ajax/*a reference to the ajax function*/,
    2000, {url: 'someurl', success: onSuccess, error: onError}
);