2013-04-08 163 views
0

我需要一個功能在用戶點擊按鈕時觸發。這將設定一個工作在特定的時間執行(比如早上9點),並最終定期重複。這將通過PHP如何使用Cron在特定時間調用特定網址?

處理

所以我如何使用CronJobs沿着PHP雖然。我遵循這pretty good tutorial,但我真的不知道如何創建triggerred文件(home/path/to/command/the_command.sh)。

誰能告訴我好嗎?

編輯: 事實上,我期望做的是調用一個網址,假設用戶在某個管理網站上按下按鈕,那麼在上午9點說www.google.com。作業的管理部分將由我鏈接的tut頁面上設置的系統處理。我想知道如何應該是由這個PHP腳本時,作者說叫做文件:

$crontab->append_cronjob('30 8 * * 6 home/path/to/command/the_command.sh >/dev/null 2>&1'); 

我應該投入the_command.sh調用一個網址?

我不希望這個網址是在任何樣的瀏覽器打開。這個URL基本上會在服務器端觸發一個函數。

回答

1

有3個posibilities

1)每次有任務時添加一行在crontab中。這是最糟糕的想法

2)加入到crontab中:

* * * * * /usr/bin/php /path_to_your_script/script.php 

,並在腳本當前時間/觸發檢查這段時間的所有行動。同樣糟糕,但更好,然後1

3)創建後臺程序,這將做你的任務。例如,每隔一小時開始一次,並等待下一小時安排事件,每分鐘檢查一次。

如果你只是需要從bash的通話網址,使用下列內容:

/usr/bin/curl http://www.google.com >/dev/null 2>/dev/null 
+0

謝謝,我的問題可能不夠精確,請參閱編輯:) – 2013-04-08 15:29:18

+0

什麼是/ dev/null 2>/dev/null?對不起,我很新的cammand行 – 2013-04-08 15:59:24

+0

重定向輸出和錯誤到/ dev/null(忽略)。否則crontab會通過電子郵件向您發送輸出和/或錯誤。 – arheops 2013-04-08 19:17:19

1

如果你想在上午9點運行PHP腳本,那麼你在crontab文件命令應該是這樣的:

/usr/bin/php /var/www/mysite/script.php 

其中/usr/bin/php是通向你的PHP可執行文件,/var/www/mysite/script.php是您要執行的PHP腳本的路徑。首先在終端中運行此命令以確保其正常工作。

這將適用於任何命令。你應該取代home/path/to/command/the_command.sh您要執行的命令,使用該命令從字面上。這裏是一個命令,將在http://www.google.com/檢索頁面:

/usr/bin/curl http://www.google.com/ 
+0

謝謝,我可能還沒有在我的問題不夠準確,請編輯:)請與 – 2013-04-08 15:28:13

+0

更多的細節編輯。 – jnylen 2013-04-08 15:34:57

+0

謝謝你,我會試一試。與wget有什麼不同,我爲了同一目的在網上找到了什麼地方? – 2013-04-08 15:49:54