我試圖讓最後插入的記錄被顯示。此刻,我試圖迴應我最後插入的ID的綁定值。LastInsertId PHP
$stmt= $dbh->prepare("INSERT INTO child (FName, LName, Age, Sex, Allergies) values (:FName, :LName, :Age, :Sex,:Allergies)");
$stmt->bindValue(':FName', $_POST['FName'], PDO::PARAM_STR);
$stmt->bindValue(':LName', $_POST['LName'], PDO::PARAM_STR);
$stmt->bindValue(':Age', $_POST['age'], PDO::PARAM_STR);
$stmt->bindValue(':Sex', $_POST['sex'], PDO::PARAM_STR);
$stmt->bindValue(':Allergies', $_POST['allergies'], PDO::PARAM_STR);
$add1=$stmt->execute();
$newchild=$dbh->lastInsertid();
以上只是創建記錄
$stmt=$dbh->prepare("INSERT INTO pcdetails (childID, parentID) values (:newchild, :newparent)");
$stmt->bindValue(':newchild', $newchild, PDO::PARAM_STR);
就是IM結合的新的子記錄到$ newChild對象。我只使用最後一個插入ID爲一個單獨的表格im讓這將自動生成一旦孩子和父記錄被插入。這是所有工作正常...沒有得到任何錯誤。
現在我的問題:我試圖使用相同的bindValue回顯插入到數據庫中的過去的記錄。
一直以來我只是使用查詢,將顯示所有的記錄是:
$sql = "select child.childid, FName, LName, age, sex, allergies from child ORDER BY LName, FName
但我想只是爲了顯示最後一個記錄。
香港專業教育學院試過如下:
$sql = "select child.childid, FName, LName, age, sex, allergies from child ORDER BY LName, FName where childid = "<?php echo $newchild; ?>"";
但即時得到錯誤 「解析錯誤:語法錯誤,意外 '?'」。林不知道爲什麼我得到這個錯誤。
任何幫助將是偉大的。
謝謝。
這是***語法錯誤***。對於這些和一般的PHP錯誤消息的理解幫助,請首先參考以下參考問題:[參考 - 此錯誤在PHP中意味着什麼?](http://stackoverflow.com/questions/12769982/reference-what-這個錯誤意味着在PHP中) – hakre
使用與'$ newchild'字段一樣的''準備'和'綁定'與前面的代碼一樣。 – Spudley