2011-08-23 63 views
0

我的編碼有關於linux和php中的crontab,我想要做的是我的cronjob datetime是* * * * *,這意味着它每分鐘也會檢查結果,所以一旦我的結果檢查完成,它會插入到數據庫,但現在我的結果是不斷插入到數據庫,所以如何每天只用cronjob運行數據庫中的每一分鐘只插入一條記錄或每分鐘如何停止向數據庫插入結果?如何每天只插入一條記錄?

謝謝希望你們回答我儘快

+0

您是否試過只檢查您是否已經插入記錄?有類似'select * from table where DATE(timestamp)= CURRENT_DATE()'? – J0HN

+0

好主意,但是如何檢查插入的記錄?即時通訊需要在PHP語言 – user723128

+0

你得到了那裏的聲明 - 只需將其包括在'mysql_query()'或類似的。 –

回答

3

執行以下操作:

  1. 添加日期字段添加到記錄並使其獨特。
  2. 修改你的工作以檢查是否有記錄 - 如果是,請不要插入新記錄。
1

您必須檢查您是否已經插入日期。假設你的表是Table和存儲日期列是datetimestamp

$sql = "select * from Tablewhere DATE(`date`) = CURRENT_DATE()"; 
$result = mysql_query($sql); 
if (mysql_num_rows($result)>0){ 
    //you already have inserted current date, handle this as you need 
} 
else{ 
    //current date have not beed inserted, insert it as usual 
} 

此代碼不檢查SQL錯誤,並且不使用prepared statments,但其實很簡單,並提供了一個很好的主意,開始。