0

我正在上传一个表单并将其数据插入 MySQL 中的一个表中。主键是唯一必须唯一的字段。在以下代码中,我检查错误号是否为 1062(重复条目)并针对该情况显示自定义消息。但是当我在表中输入唯一数据时,有时我仍然会收到错误消息。奇怪的是,它只是偶尔出现,但我 100 确定这些值不一样......

$success = mysqli_stmt_execute( $stmt );
$errorCode = mysqli_errno( $con );

if ($success) { 
move_uploaded_file( $_FILES['photo']['tmp_name'], $uniquePath);

?>

<div id="response">
    <p>Success! The user has been added to the database</p>
</div>

<?
} else if ($errorCode == 1062) {
?>

<div id="response">
    <p>
     The user could not be added to the database.
      The ID already exists!
    </p>
</div>

<? 
} else {
?>

<div id="response">
     <p>
      The user could not be added to the database.
      MySQL error code: <? echo $errorCode ?>
    </p>
</div>

<?
}
?>
</body>
</html>

SQL 相关的代码如下所示:

$sql = "INSERT INTO users ( id, photo_path) VALUES (?, ?)";
$stmt = mysqli_prepare( $con, $sql );
mysqli_stmt_bind_param( $stmt, 'is', $_POST['id'], $uniquePath);

我在这里忽略了一些简单的事情吗?

4

0 回答 0