我试图让最后插入的记录被显示。此刻,我试图回应我最后插入的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