2015-07-05 102 views
-1

我有一個更新現有數據的update.php表單。我的問題是當我想提交時,我的表單的一部分是動態的,所以他們可以在更新時向mysql添加一個新行,所以我一直在MySQL中獲取重複的動態行。在更新期間向MySQL插入多行。 [不要插入重複記錄]

$i = 0; 
while($i<count($fromhours)){ 
$fromhours[$i]= $fromhours[$i]; 
$fromminutes[$i]= $fromminutes[$i]; 
$tohours[$i]= $tohours[$i]; 
$tominutes[$i]= $tominutes[$i]; 
$resulthours[$i]= $resulthours[$i]; 
$resultminutes[$i]= $resultminutes[$i]; 
$hrscode[$i]= $hrscode[$i]; 
$gremark[$i]= $gremark[$i]; 
$query = "INSERT INTO `generalreport` ( 
    `ID`, `date`, `fromhours`, `fromminutes`, `tohours`, `tominutes`, `resulthours`, `resultminutes`, `code`, `remark` 
    ) VALUES (
    '".$id."', 
    '".$date."', 
    '".$fromhours[$i]."', 
    '".$fromminutes[$i]."', 
    '".$tohours[$i]."', 
    '".$tominutes[$i]."', 
    '".$resulthours[$i]."', 
    '".$resultminutes[$i]."', 
    '".$hrscode[$i]."', 
    '".$gremark[$i]."' 
    );"; 

mysql_query($query);   
$i++; 
}; 

如何使用此代碼進行更新,只需在MySQL中插入新數據,舊數據就不會被複制。

+0

威力與此類似http://stackoverflow.com/questions/5171328/how-to-insert-distinct-records-from-table-a-to-table-b-both-tables-have-same-st – Jigar

+0

或這個http://stackoverflow.com/questions/8756689/avoiding-inserting-duplicate-rows-in-mysql – Jigar

回答

0

我認爲你有索引的表中的MySQL這樣,如果有任何新的數據輸入有任何類似的日期和條目中的MySQL將自動彈出重複輸入錯誤

+1

謝謝我已經添加了UNIQUE索引,它現在工作正常。 –

0

使用

INSERT INTO `generalreport` ( 
`ID`, `date`, `fromhours`, `fromminutes`, `tohours`, `tominutes`, `resulthours`, `resultminutes`, `code`, `remark` 
) VALUES (...),(...),(...)