gpt4 book ai didi

php - 如何在mysql中的多个表中插入相同的id。使用 PHP?

转载 作者:行者123 更新时间:2023-11-29 02:14:14 27 4
gpt4 key购买 nike

我创建这个是为了插入到多个表中,我想将相同的 ID 插入到两个表中。 ID 在 test 表中自动递增,我希望 test_category 表采用相同的 ID。

我试过了,但不知道哪里做错了,报错

Fatal error: Call to undefined method mysqli_stmt::insert_id() in C:\wamp64\www\Android\include\DbOperations.php on line 27"

检查此图片以获取详细的错误报告

[ https://www.dropbox.com/s/nuij2o2ac3xp8mz/Untitled4.png?dl=0]

我的 php

public function testReg($name, $pin, $a, $b, $ho, $ll, $c, $d){
$stmt = $this->con->prepare("INSERT INTO `test` (`name`, `pin`) VALUES (?, ?)");
$stmt->bind_Param("ss",$name,$pin);
if(!$stmt->execute()){
return 2;
}
$stmttst = $this->con->prepare("INSERT INTO `test_category` (`pid`, `name`, `a`, `b`, `ho`, `ll`, `c`, `d`) VALUES (?, ?, ?, ?, ?, ?, ?, ?);");
$stmttst->bind_Param("isssssss",$stmt->insert_id(),$name,$a,$b,$ho,$ll,$c,$d);
if ($stmttst->execute()){
return 1;
}else{
return 2;
}
}

最佳答案

mysqli::$insert_id”是 mysqli 对象的一个​​属性,您在 $stmt 上的尝试尝试以下代码将解决您的问题。

public function testReg($name, $pin, $a, $b, $ho, $ll, $c, $d){
$stmt = $this->con->prepare("INSERT INTO `test` (`name`, `pin`) VALUES (?, ?);");
$stmt->bind_Param("ss",$name,$pin);
if(!$stmt->execute()){
return 2;
}
$stmttst = $this->con->prepare("INSERT INTO `test_category` (`pid`, `name`, `a`, `b`, `ho`, `ll`, `c`, `d`) VALUES (?, ?, ?, ?, ?, ?, ?, ?);");
$stmttst->bind_Param("isssssss",$this->con->insert_id(),$name,$a,$b,$ho,$ll,$c,$d);
if ($stmttst->execute()){
return 1;
}else{
return 2;
}

}

截至文件mysqli::$insert_id -- mysqli_insert_id — 返回在最新查询中使用的自动生成的 id

因此,您可以使用

而不是使用 $this->con->insert_id()
$var = $this->con;
mysqli_insert_id($var);

关于php - 如何在mysql中的多个表中插入相同的id。使用 PHP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42943972/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com