将lastinsertid分配给变量

时间:2016-02-04 00:10:56

标签: php pdo lastinsertid

我基本上是一名新程序员,拥有多年的Oracle经验。我有一个表单收集家庭和成员信息(其中还有一个下拉列表,其中包含连接到数据库的数据库连接以检索分支列表框)。

在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注意:未定义的变量:lastid在C:\ Users \ Desktop \ OECC \ form中,lastinsertid works.php在165行上
  PHP注意:尝试在第165行使用lastinsertid works.php获取C:\ Users \ Desktop \ OECC \ form中非对象的属性   PHP致命错误:在C:\ Users \ Desktop \ OECC \ form中使用lastinsertid works.php在第165行调用null成员函数lastInsertId()

1 个答案:

答案 0 :(得分:1)

$lastid = $dbh->lastInsertId()

您使用->代替=