MYSQLI调试问题

时间:2014-03-07 07:39:24

标签: php debugging mysqli

我一直被绝对地挂在这上面。

我正在对我的脚本进行调试。我正在尝试插入我的数据库,但一切运行正常,现在出现错误。数据库中没有输入任何内容。好的,所以我强迫一些错误报告如下:

ini_set('display_errors',1);
error_reporting(E_ALL);
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);

我得到了一些很棒的信息和通常这部分很快,但我不能完全弄错。

  

致命错误:带有消息的未捕获异常'mysqli_sql_exception'   '你的SQL语法有错误;检查手册   对应于您的MySQL服务器版本,以便使用正确的语法   'explain,date_added'附近的价值('预算','','','交易','',现在()'at at   upload / inventory_list.php中的第1行:74堆栈跟踪:#0   upload / inventory_list.php(74):mysqli_query(Object(mysqli),'INSERT   INTO pro ...')#7 {main}在第74行的upload / inventory_list.php中抛出

有问题的一行是:

    $sqls = "INSERT INTO products (product_name,price,details,category,explain,date_added) 
              VALUES('$product_name','$price','$details','$category','$explain',now())";

$result = mysqli_query($db_conx,$sqls);

我从我的典型调试中获得了正确的答案,但我似乎无法追踪它。非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

是的,您在查询中有明显的错误

$sqls = "INSERT INTO products (product_name,price,details,category,explain,date_added) 
              VALUES('$product_name','$price','$details','$category','$explain',now())";

应该是

$sqls = "INSERT INTO products (product_name,price,details,category,`explain`,date_added) 
              VALUES('$product_name','$price','$details','$category','$explain',now())";

explain是一个保留的关键字,所以请使用反引号