Php 当Time=this时,如何执行查询
我想在特定时间运行查询 例如,如果时间是5:10:25,则执行此查询 它尝试了以下代码Php 当Time=this时,如何执行查询,php,mysql,Php,Mysql,我想在特定时间运行查询 例如,如果时间是5:10:25,则执行此查询 它尝试了以下代码 date_default_timezone_set("Asia/Calcutta"); $time=date("h:i:s"); if ($time=='04:10:00') { $sql="insert into bsechartsdata (TickerPlantCode,DateTime,OpenPrice,HighPrice,LowPrice,ClosePrice) select DISTINCT T
date_default_timezone_set("Asia/Calcutta");
$time=date("h:i:s");
if ($time=='04:10:00')
{
$sql="insert into bsechartsdata (TickerPlantCode,DateTime,OpenPrice,HighPrice,LowPrice,ClosePrice) select DISTINCT TickerPlantCode,DateTime,OpenPrice,HighPrice,LowPrice,ClosePrice from bsepricequotes_latest";
$query=mysql_query($sql);
}
但是查询没有执行
我哪里做错了?如果您要在web应用程序中集成这种类型的代码,那么您需要一个人(而且只有一个人)在您想要的时候准确地发出请求,这样听起来就不会有问题
好主意。研究Linux下的cron作业(或使用windows服务器时的计划任务)将当前时间戳/时间添加到此处:
$time=date("h:i:s", time());
使用cron作业不是更好吗? 如果您的“主机”上不支持此操作,那么您可以创建一个包含需要完成的作业的数据库。如果数据库中的时间已过,则执行该任务。最好使用运行脚本来执行该查询
像您这样的if语句需要有人在那一秒运行特定的页面 PHP代码必须由某种源代码触发。 如果用户恰好在04:10:00点击您的web服务器,则将执行查询。 但是,您不能期望PHP接受您给出的指令,并记住在指定的时间执行这样的过程
简而言之,您需要设置一个您可以创建一个查询队列,一个具有某种结构的表:
- 在DATETIME之后执行
- 我的查询文本
然后只需创建一个每分钟运行一次的脚本(或者每分钟运行多次:有一些技巧可以做到这一点)。然后,只需在队列中插入要运行的查询,cronjob就会在应该的时候执行它 是否需要前导零
$time=date("H:i:s");
+您需要在每次运行cron时检查当前时间和您的时间,
只要当前时间少于您的时间,您就必须执行查询
您需要为此设置标志(如果未设置标志,则只运行查询)首先检查
mysql\u错误
?@mishu:ahh,好的。直到手册说明的末尾才阅读。