2014-03-07 88 views
0

我想創建一個語句,以便當提交按鈕被按下時,數據被傳遞到兩個表(屬性,frent)中。如何將數據插入到通過外鍵鏈接的兩個表中?

PK會自動添加到屬性表中。然後這個PK需要被提取並作爲FK添加到frent表中,以及其他提交的數據。

當我修改語句以將數據插入到屬性表時,它工作正常。但是,當輸入第二個表的信息時,所有事情都停止。我知道這個陳述肯定有問題,但我不知道是什麼。我會很感激任何建議。 謝謝 提前。

PropertyID是屬性PK和frentfrent。這是一個自動增量,因此它不包含在代碼的第一部分。

的聲明,我想創建:

$sql = "START TRANSACTION ; 
     INSERT INTO properties ( PropertyType, AH, Bedrooms, Bathrooms, Ensuite, Kitchen, LivingRoom, DiningRoom, UtilityRoom, Conservatory, Garage, Garden, Parking,Furnished, Description, PostCode, AddL1, AddL2, AddL3,Area,County,Country) 
     VALUES('$PropertyType', '$AH', '$Bedrooms','$Bathrooms', '$Ensuite', '$Kitchen', '$LivingRoom', '$DiningRoom', '$UtilityRoom', '$Conservatory', '$Garage','$Garden', '$Parking','$Furnished', '$Description',     '$PostCode','$AddL1', '$AddL2', '$AddL3','$Area','$County','$Country'); 
     INSERT INTO frent (FRent,LAST_INSERT_ID(PropertyID), MinCon, PaymentExp, RCost) 
     VALUES ('FRent','$PropertyID', '$MinCon', '$PaymentExp','$RCost'); 
     COMMIT"; 
+0

檢查這個線程,http://stackoverflow.com/questions/3837990/last-insert-id-mysql 其他選項是先執行insert insert然後用mysql_insert_id()得到最後插入的id –

回答

0

我想,在位於第二表的表字段的措辭錯誤。對我來說,它看起來就好像這是用來代替現場

改變您的查詢像這樣的正確名稱的函數調用:

$sql = "START TRANSACTION ; 
    INSERT INTO properties ( PropertyType, AH, Bedrooms, Bathrooms, Ensuite, Kitchen, LivingRoom, DiningRoom, UtilityRoom, Conservatory, Garage, Garden, Parking,Furnished, Description, PostCode, AddL1, AddL2, AddL3,Area,County,Country) 
    VALUES('$PropertyType', '$AH', '$Bedrooms','$Bathrooms', '$Ensuite', '$Kitchen', '$LivingRoom', '$DiningRoom', '$UtilityRoom', '$Conservatory', '$Garage','$Garden', '$Parking','$Furnished', '$Description',     '$PostCode','$AddL1', '$AddL2', '$AddL3','$Area','$County','$Country'); 
    INSERT INTO frent (FRent, PropertyID, MinCon, PaymentExp, RCost) 
    VALUES ('FRent',LAST_INSERT_ID(), '$MinCon', '$PaymentExp','$RCost'); 
    COMMIT"; 
相關問題