我想在按下开始按钮后每分钟运行一个脚本。
我怎样才能实现这个目标?
这是我想要运行的代码:
if (!isset($_SESSION)) {
session_start();
}
$loggedUser = $_SESSION['MM_Username'];
$result=mysql_query("SELECT `availableTime` FROM `user` WHERE userName='$loggedUser'");
$row=mysql_fetch_assoc($result);
$time=$row['availableTime'];
if ($time > 0){
mysql_query("UPDATE `user` SET `availableTime` = `availableTime` - 1 WHERE userName='$loggedUser' ");
} else {
mysql_query("UPDATE `user` SET `availableTime` = `availableTime` = 0 WHERE userName='$loggedUser' ");
header( 'Location: http://192.168.42.1/kick.php?ip=' . $_SESSION['ip'] ) ;
}
答案 0 :(得分:4)
如果你使用的是crontab unix,如果你在Windows上使用Windows Task Scheduler
Cron示例(每分钟)
* * * * * /path/to/php /var/www/html/yourscript.php
心灵的改变
我认为你想在这里做的是在用户浏览器中使用AJAX每分钟调用一次这个脚本并检查用户是否仍然被允许登录,如果用户不应该登录,你应该杀死他们与PHP的会话,然后使用javascript重定向。
答案 1 :(得分:1)
使用crontab / windows任务调度程序并通过php执行它exec()/ system()
答案 2 :(得分:0)
关注你的问题。 按下开始按钮后。 你需要使用javascript / jquery来做到这一点。
您可以使用以下函数在5000毫秒内使用AJAX调用您的脚本
setInterval(function(){ajaxcall();},5000);
下面是函数ajax调用
function ajaxcall() {
AJAX call your php script
}
答案 3 :(得分:0)
我认为您需要通过javascript调用调用您的php脚本
var timerID = setInterval(function() {
$.ajax({
url: "script.php",
context: document.body
});
}, 60 * 1000);
clearInterval(timerID);