2016-09-07 86 views
0

记录我使用此代码automaticall更新每天

$q = mysql_query("SELECT `time` from `table`"); 
$row = mysql_fetch_assoc($q); 
$timeDiff = time() - $row['time']; 
if ($timeDiff >= 86400){ 
    //run code 
} 

,但我得到的第二行的错误可能有人请帮助我。

+0

您面临的问题是什么? –

+0

'table':开头的空格是打算? – Tamil

回答

0

在这里你去:

$datetime = new DateTime("+1 days"); 
$date = $datetime->format("Y-m-d H:i:s"); 

$timeDiff = time() - $row['time']; 

if($timeDiff >= '$date) { 

//Code Here 

} 

编辑:

可以在your_file.php更新您的代码并运行此:

0 0 1 * * php /var/www/vhosts/your_somain.com/httpdocs/scripts/your_file.php 

这将每月运行一次,在每月第一天午夜(即1月1日上午12:00,2月1日上午12:00等):

对于进一步的解释:

参考:tutsplus.com

希望它会帮助你。

+0

如果我想每月检查一次该怎么办? – stylish

+0

只需添加这行'$ datetime = new DateTime(“+ 1 month”);' – Noman

+0

实际上我正在制定一个工资管理系统,我希望工资每个月都会更新一次这段代码是否可以工作? – stylish

0

输出错误

$q = mysql_query("SELECT `time` from` table`"); 

    if (!$q) { 
     $message = 'Invalid query:'.mysql_error(). "\n"; 
     die($message); 
    } 

    while($row = mysql_fetch_assoc($q)) { 
     $timeDiff = time() - $row['time']; 

     if ($timeDiff >= 86400){ 
      //run code 
     } 
    } 
+0

如果我想要一个月的时间差,我该怎么办? – stylish

+0

我试过这个代码,但我得到错误致命错误:未捕获错误:调用未定义函数mysql_query() – stylish

+0

致命错误:未捕获错误:调用未定义的函数mysql_query()您应该检查php_mysql.dll –

0

问题不是第二行。问题是第一行。 “SELECT time from table” - table是mysql中的保留关键字。