2011-06-13 70 views
1

我從一個PHP foreach插入一些數據。當數據插入時,我確定數據是否已經存在於2個表中?如果沒有,插入,否則跳轉。如何確定插入數據庫操作是否成功?

但是在這個過程中,我怎麼能知道每個項目的數據已經插入或者沒有?

{ 
//some foreach process get $title, $name, $date 
mysql_query("INSERT INTO table1 (title,name,date) SELECT '".$title."','".$name."','".$date."' FROM dual WHERE not exists (SELECT title FROM table1 WHERE table1.title = '".$title."') AND NOT EXISTS (SELECT title FROM table2 WHERE table2.title = '".$title."')"); 
     //I want to add some judge like this: 
     //if this item insert { 
     //do some stuff; 
     //} else { 
     //do some stuff; 
     //}  
} 

回答

6

http://php.net/function.mysql-query

對於其它類型的SQL語句,INSERT,UPDATE,DELETE,DROP,等,的mysql_query()返回TRUE成功FALSE上錯誤

+0

是否有某種錯誤日誌的時候這些操作失敗? – 2011-10-25 19:13:36

3

mysql_query總是返回一個值。當INSERT成功時它返回TRUE。見下面的代碼。希望這可以幫助。 :)

$result=mysql_query($sql); 

// SUCCESSFUL 
if($result){ 
     echo "Successful"; 
} 
// NOT SUCCESSFUL 
else { 
     echo "Not inserted"; 
} 
1

這可能有助於

If (mysql_query($sql)){ 
//Success 
}else{ 
//Failure 
echo mysql_error(); //Reason 
} 
相關問題