没有“ bind_param”的情况下如何进行更新

时间:2019-07-04 12:07:24

标签: php mysql mysqli

因此,我正在尝试为我的公司设置一个简单的出勤网络应用程序。签入/签出使用一个按钮完成,为了做到这一点,我几乎同时进行了INSERT和UPDATE。 但是要进行适当的更新,我需要为“ bind_param”添加一个“ id”,而且我有点卡在了那里。我敢打赌,这是一个简单的问题,但我找不到解决的办法。

if ($pre == 0) {
    $sql = $mysqli->prepare("INSERT INTO presence(code_pr,heure_debut,user_id)
        VALUES( ? , ? , ? )
        ") or die(mysqli_error($mysqli));
    $sql->bind_param("sss", $code_pr, $heure_debut, $idcompte);

    if (!$sql->execute()) {
        die('<h3 style="color:red;" align="center">ERREUR</h3>' . mysqli_error($mysqli));
    }
} else {
    if ($pre == 1 && $precheck == 1) {
        $sqlsrt = $mysqli->prepare("UPDATE presence SET heure_fin=? WHERE user_id=? AND id=?") or die(mysqli_error($mysqli));
        $sqlsrt->bind_param('ss', $heure_fin, $idcompte);
        if (!$sqlsrt->execute()) {
            die('<h3 style="color:red;" align="center">ERREUR</h3>' . mysqli_error($mysqli));
        }
    }
}

我希望能够有一个ID放入我的“ bind_param”中。

1 个答案:

答案 0 :(得分:2)

我认为'$ conn-> lastInsertId()'将有所帮助。

if (!$sql->execute()) {
    die('<h3 style="color:red;" align="center">ERREUR</h3>' . 
    mysqli_error($mysqli));
}else{
   //Here you can take the ID of the last Insert
   $id = $conn->lastInsertId()
}