Php Mysqli使用自动增量插入到多个表中
您好,我尝试使用mysqli从第一个表中获取autoincrement id,然后插入到第二个表中,这是我为每个表设计的数据库 表用户Php Mysqli使用自动增量插入到多个表中,php,sql,mysqli,Php,Sql,Mysqli,您好,我尝试使用mysqli从第一个表中获取autoincrement id,然后插入到第二个表中,这是我为每个表设计的数据库 表用户 id_user PK auto-inc username password nama role status 表siswa id_siswa PK auto-inc id_tingkatan nama_siswa jk_siswa hp_siswa nama_ortu jk_ortu hp_ortu
id_user PK auto-inc
username
password
nama
role
status
表siswa
id_siswa PK auto-inc
id_tingkatan
nama_siswa
jk_siswa
hp_siswa
nama_ortu
jk_ortu
hp_ortu
id_user
这就是我尝试过的
$query = "INSERT INTO users
(username, password, nama, role, status)
VALUES ('$name','$password','$nama','$role','$status')";
$koneksi->query($query);
$query = "INSERT INTO siswa
(id_tingkatan, nama_siswa, jk_siswa, hp_siswa,
nama_ortu, jk_ortu, hp_ortu, id_user)
VALUES ('$tingkatan','$nama','$jksiswa','$hpsiswa',
'$namaortu','$hportu', $koneksi->insert_id)";
$koneksi->query($query);
数据插入到用户表中,但不插入到siswa表中,对此有何建议
编辑:仅忽略变量($jkortu)现已修复,感谢在后一插入中,第一个逗号列表中的项目数与第二个逗号列表中的项目数不一致。这将引发语法错误。您缺少一个参数 您应该始终测试mysql错误,否则它将无声地失败,并且您不知道发生了什么:
if (!$server->query($query)) {
throw new Exception($server->error());
}
那么,错误是什么?您可能在第二个查询中缺少
jk_ortu
字段的值。数据插入到用户表中,但不插入到siswa表中,它不会给出任何错误output@JigarShah谢谢你提起,我没注意到,将立即尝试代码一点合理的格式设置使bug更容易找到-仅当使用过程样式mysqli\u insert\u id()
且OP问题中的$server
在哪里时才使用函数