2016-08-02 48 views
0

數據驗證後,SQL查詢來填充在Customers表中的一行是這樣的擷取PK列後立即INSERT INTO

mysqli_query($connect, "INSERT INTO Customers (CustFirst, CustLast, CustAddress) 
VALUES ('$CustFirst', '$CustLast', '$CustAddress')") 

現在這樣的作品,相當直接的,但客戶表有4列,CustID是PK和AI。我需要做一個新的查詢沿線

mysqli_query($connect, "SELECT CustID from Customers 
WHERE CustFirst='$CustFirst 
AND CustLast='$CustLast' 
AND CustAddress='$CustAddress') 

只是爲了檢索插入到表中的唯一行的CustID?或者有沒有捷徑?我想做一些沿線

echo "The Customer " . $CustFirst . " " . $CustLast . " was added<br>"; 
echo "with " . $CustID . " being the number associated with the account."; 

謝謝!

+0

**警告**:使用'mysqli'時,應該使用[參數化查詢](http://php.net/manual/en/mysqli.quickstart.prepared-statements.php)和['bind_param' ](http://php.net/manual/en/mysqli-stmt.bind-param.php)將用戶數據添加到您的查詢。 **不要**使用字符串插值或連接來完成此操作,因爲您創建了嚴重的[SQL注入漏洞](http://bobby-tables.com/)。 **絕不**將'$ _POST'或'$ _GET'數據直接放入查詢中,如果有人試圖利用您的錯誤,這會非常有害。 – tadman

+0

@tadman感謝您的提示,我會仔細查看。 –

回答

1
$CustID = mysqli_insert_id(connection); 

你可以在執行插入查詢後寫上面的代碼。這將返回插入數據庫的最新主鍵ID。

+0

很酷,沒見過那個功能。謝謝! –