Mysqli通过自动增量插入多个表

时间:2018-04-25 11:26:53

标签: 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 

这是我试过的

$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),谢谢

2 个答案:

答案 0 :(得分:2)

在后一种INSERT中,第一个commalist中的项目数与第二个commalist中的项目数不对应。这应该抛出语法错误。

答案 1 :(得分:-1)

您缺少参数。

你应该总是测试mysql错误,否则它会无声地失败,你不知道发生了什么:

if (!$server->query($query)) {
  throw new Exception($server->error());
}