当我点击按钮时,我希望网站为所有在线用户刷新,然后播放音频。
我需要使用PHP吗?
答案 0 :(得分:1)
<div id="button"></div>
$(window).load(function(){
var audio = new Audio('audio_file.mp3');
audio.play();
});
$("#button").click(function(){
window.location.reload();
});
你不需要PHP,实际上你不能在php中轻松完成。 Php是一种服务器端语言,它意味着它可以在您的服务器上执行操作,只是将其呈现给客户端或从客户端收回数据。 您想要做的是客户端操作。
更新:: 我想念它。 所以你需要在你身边创建一个Php文件,比如叫它Admin.php
Admin.php将做的是创建一个包含音频文件位置和名称的数据库值,以及它是否可以播放。
<?php
$dbh=new PDO('mysql:dbname=DB;host=localhost;charset=utf8','user','pass');
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);}
$insert = $dbh->prepare ("Insert INTO Audio (Audioval,location) VALUES (:Audioval,:location)");
$insert->bindParam(': Audioval',"1"); // 1 play audio , 0 no audio
$insert->bindParam(': location',"x.mp3");
$insrt->execute();
?>
另一个让我们称之为Users.php,它将检查是否有要从数据库播放的音频文件。
<?php
$dbh=new PDO('mysql:dbname=DB;host=localhost;charset=utf8','user','pass');
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);}
$stmt = $dbh->prepare ("SELECT * FROM Audio");
while ($results = $stmt->fetch()) {
$Audio=$results['Audioval'];$location =$results['location'];
}
if ($Audio==1){
echo "<script>var audio = new Audio('".$location."'); audio.play();</script>";
}
?>
以及将继续检查Users.php的客户端脚本
setInterval(function, 60000); // this will call it every mint
function checkaudio (){
$.ajax({
type: "POST",
url: "Users.php",
data: "",
success: function(T)
{
$("#Audio").html(T).show();
}
});
}