2013-11-28 167 views
0

我最近添加了一個cron作業來每天執行一個PHP文件,但數據庫沒有被更新,因爲它應該在PHP文件中。我假設這是因爲cron作業沒有運行。不執行PHP文件的Cron作業

以下是我把對的cronjob:

@daily /etc/cron.php (located by executing crontab -l) 

    -- php file -- 
    $db = new PDO("dsn", "username", "password"); 
    $db->exec("UPDATE subscriptions SET exp_date = exp_date - 1 WHERE payment_status = 'Completed'"); 

場EXP_DATE設置爲32,每當用戶進行購買,但它沒有被1通過的cronjob我在開始計算。

任何幫助,將不勝感激。

+1

檢查,如果你的腳本運行控制檯細末,用'PHP的/ etc/cron.php',如果你有使用例如一些路徑'$ _SERVER' VAR你會得到錯誤。 –

+0

雖然在檢查數據庫後確實工作 – user2101411

+0

您是否在crontab命令之前添加了'php'? '@daily php/etc/cron.php' –

回答

1

使用crontab -e並嘗試使用以下代碼。

0 0 * * * <path>/php /etc/cron.php 

這將在每天0點00運行,你應該給予正確的路徑到PHP(示例:/usr/bin/php5

注:假設你的文件在CLI運行良好。

如果沒有按照以下的許可tr,並再試一次。

chmod a+x /etc/cron.php