[英]calculating every 48 hours in php
在这里,我没有办法在48小时内仅在php中更新一次数据库。 我已经使用了使用模数的技巧,但这不能给出确切的输出。 在以下代码中,页面是刷新的,最近48小时每45秒执行一次。
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<META HTTP-EQUIV="REFRESH" CONTENT="45">
</head>
<body>
<?php
$date1 = date('Y-m-d h:i:s');
$date2 = "2012-02-29 12:59:00";
$diff = abs(strtotime($date2) - strtotime($date1));
$hours = $diff/(60*60);
echo $hours . "<h1> NeVeR CloSe ThIs PaGe ......</h1>";
if($hours%48 == 0)
{
$sql = "UPDATE [db].[dbo].[table] set status = 0";
$res = odbc_exec($con,$sql) or die(odbc_error());
}
?>
</body>
</html>
从日期开始,如何每48小时仅执行一次更新查询:2012-02-29 12:59:00
为避免UPDATE在48小时内多次执行,我建议您在发送UPDATE查询之前将当前时间与上次执行时间进行比较。 但是要进行比较,您必须将上一次执行的日期时间戳保存在某个地方。 我会将其保存到数据库的新表中。
对于每48小时进行一次更新,我建议您使用Cron作业。 您可以在服务器上进行配置,也可以在cronjob网站上进行注册。 您可以在许多网站上免费注册cron职位。 http://www.onlinecronjobs.com/但我建议在您自己的服务器上注册。
由于SQL Server Express不随SQL Agent一起提供,因此您可以使用Windows调度程序通过存储的proc或SQL脚本运行SQLCMD。 MSDN链接
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.