我基本上是一個新的程序員,有幾年的Oracle經驗。我有一個收集家庭和成員信息的表單(它也有一個連接到數據庫以檢索分支機構列表框的數據庫連接的下拉列表)。將lastinsertid賦值給一個變量
在POST上,它將信息保存到數據庫中的家庭和成員表。家庭是父表,所以記錄必須先創建。然後我需要檢索household.id(一個MySql自動增量字段)以保存到成員表中,以將兩者關聯起來。
執行插入到家庭表時,它工作正常。我打印自動增量字段進行檢查。
$dbh->beginTransaction();
$stmt->execute();
print("lastinsertid is really = \n");
// $lastid->$dbh->lastInsertId();
print $dbh->lastInsertId();
但我需要在下一個語句中使用它,所以需要存儲它。當我這樣做(只是改變註釋),我會得到錯誤。
$dbh->beginTransaction();
$stmt->execute();
print("lastinsertid is really = \n");
$lastid->$dbh->lastInsertId();
// print $dbh->lastInsertId();
錯誤:
PHP Notice: Undefined variable: lastid in C:\Users\Desktop\OECC\form with lastinsertid works.php on line 165
PHP Notice: Trying to get property of non-object in C:\Users\Desktop\OECC\form with lastinsertid works.php on line 165 PHP Fatal error: Call to a member function lastInsertId() on null in C:\Users\Desktop\OECC\form with lastinsertid works.php on line 165