在php中的一个Mysql查询中插入并更新到不同的表中

时间:2019-05-20 08:33:10

标签: php mysql mysqli

我尝试了下面的代码,但是没有用:

if (isset($_POST['ubah'])) {
    $queryUpdate = mysqli_multi_query("INSERT INTO perbaikan SET id_perbaikan = '',idrusakbaik = '" . $id . "',komenrusak = '" . $_POST['komenrusak'] . "',tglbaik = '" . $tgl_sekarang . "'; UPDATE kerusakan SET  status = '" . $_POST['status'] . "'WHERE id_kerusakan = '" . $id . "'");

    if ($queryUpdate) {
        echo "<script> alert('Data Berhasil Disimpan'); location.href='index.php?hal=master/perbaikan-mekanik/list' </script>";
        exit; 
    }
}

1 个答案:

答案 0 :(得分:0)

没有诸如“一个查询中有两个查询”之类的东西。总是有两个查询。并且没有一个单一原因可以一次调用它们。因此,只需将查询重写为两个准备好的语句

$sql = "INSERT INTO perbaikan SET id_perbaikan = '',idrusakbaik = ?,komenrusak = ?,tglbaik = ?";
$stmt = $conn->prepare($sql);
$stmt->bind_param("sss", $id, $_POST['komenrusak'],$tgl_sekarang);
$stmt->execute();

$sql = "UPDATE kerusakan SET  status = ? WHERE id_kerusakan = ?");
$stmt = $conn->prepare($sql);
$stmt->bind_param("ss", $_POST['status'], $id);
$stmt->execute();