php - 如何在 php 中的 mysql 查询中获取有用的错误消息?

标签 php

HTML 代码

<form class="col s6 " method="post" enctype="multipart/form-data">
   <div class="input-field col s12">
      <input id="last_name" type="text" name="name" class="validate">
      <label for="last_name">Certificate Name</label>
   </div>
   <button type="submit" id="btnSubmit" name="btnSubmit" class="btn btn-default" style="margin-top:20px;">ADD</button>
</form>

PHP 代码

<?php
 include('footer.php'); 

include('conn.php');
if(isset($_POST['btnSubmit']))
{
    $name = mysqli_real_escape_string($conn,$_POST["name"]);

    $sql = "INSERT INTO `isodetail`(`title`) VALUES ('$name')";

    $run = mysqli_query($conn, $sql);

    if($run)
    {
        echo "<script>alert('Certi Added Successfully')</script>";
        echo "<script>window.open('isocerti.php','_self')</script>";
    }
    else
    {
        echo "<script>alert('Something Error!..please try Again..')</script>";
    }
}

 ?>

这显示一条警报消息:Something Error!..please try Again.. 也是这样mysqli_query有错误吗?

最佳答案

在 else block 中,您可以看到如何捕获 MySQL 错误并将其显示在警报中。

if(isset($_POST['btnSubmit'])) {
    $name = mysqli_real_escape_string($conn,$_POST["name"]);
    $sql = "INSERT INTO isodetail(title) VALUES ('{$name}')";
    $run = mysqli_query($conn, $sql);

    if($run) {
        echo "<script>alert('Certi Added Successfully');window.open('isocerti.php','_self');</script>";
    } else {
        $error = addslashes(mysqli_error($conn));
        echo "<script>alert('An Error occur: {$error}');</script>";
    }
}

引用文献: MySQLi-错误:http://php.net/manual/en/mysqli.error.php
转义特殊字符:http://php.net/manual/en/function.addslashes.php (它完成了本例的工作)

关于php - 如何在 php 中的 mysql 查询中获取有用的错误消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54846255/

相关文章:

php - 致命的 : unable to update url base from redirection

javascript - Laravel 颜色选择器不工作

PHP:解析任何格式的日期(尤其是:2008-10-20、2008/10/20、2008.10.20、Nov. 20/08)

php - 通过重定向 PHP 发送数组

PHP - mysqldump 不起作用

php - Symfony 2 是否支持部分表单绑定(bind)?

php - MySQL - 不同的 UPDATE else INSERT 语句

特定元素的 PHP HTMLEntities

如果未登录,PHP 重定向

如果发件人是雅虎邮箱,则 gmail 不会收到 phpmailer 电子邮件