php - 表单未提交

我正在使用以下脚本来处理表单以将信息添加到我的网站。我遇到的问题是当我提交表单时,没有任何东西被提交到数据库,并且没有错误。如何向我的查询添加错误报告?

<?php
if (isset($_POST['itemdescription'])) {$itemdescription = $_POST['itemdescription'];}else {$itemdescription = '';}
if (isset($_POST['itemnumber'])) {$itemnumber = $_POST['itemnumber'];}else {$itemnumber = '';}
if (isset($_POST['sellerid'])) {$sellerid = $_POST['sellerid'];}else {$sellerid = '';}
if (isset($_POST['purchasedate'])) {$purchasedatepre = $_POST['purchasedate'];$date = DateTime::createFromFormat("D F d, Y", $purchasedatepre);$purchasedate = date('Y-m-d',strtotime($purchasedatepre));}else {$purchasedatepre = ''; $purchasedate = '';}
if (isset($_POST['otherinfo'])) {$otherinfo = $_POST['otherinfo'];}else {$otherinfo = '';}
if (isset($_POST['numberofitems'])) {$numberofitems = $_POST['numberofitems'];}else {$numberofitems = '';}
if (isset($_POST['numberofitemsused'])) {$numberofitemsused = $_POST['numberofitemsused'];}else {$numberofitemsused = '';}
if (isset($_POST['isitdelivered'])) {$isitdelivered = $_POST['isitdelivered'];}else {$isitdelivered = '';}
if (isset($_POST['price'])) {$price = $_POST['price'];}else {$price = '';}

$itemdescription = str_replace("'", "", "$itemdescription");
$itemnumber = str_replace("'", "", "$itemnumber");
$sellerid = str_replace("'", "", "$sellerid");
$otherinfo = str_replace("'", "", "$otherinfo");

include("connectmysqli.php"); 

mysqli_query($db,"INSERT INTO stockdetails (`itemdescription`,`itemnumber`,`sellerid`,`purchasedate`,`otherinfo`,`numberofitems`,`isitdelivered`,`price`) VALUES ('$itemdescription','$itemnumber','$sellerid','$purchasedate','$otherinfo','$numberofitems','$numberofitemsused','$isitdelivered','$price')");

// header('Location: stockmanager.php?&key='.$key);
?>

最佳答案

只需在查询末尾添加 或 die(mysqli_error($db));,这将打印 mysqli 错误。

 mysqli_query($db,"INSERT INTO stockdetails (`itemdescription`,`itemnumber`,`sellerid`,`purchasedate`,`otherinfo`,`numberofitems`,`isitdelivered`,`price`) VALUES ('$itemdescription','$itemnumber','$sellerid','$purchasedate','$otherinfo','$numberofitems','$numberofitemsused','$isitdelivered','$price')") or die(mysqli_error($db));

作为旁注,我会说你有mysql注入(inject)的风险,查看这里How can I prevent SQL injection in PHP? .你真的应该使用准备好的语句来避免任何风险。

https://stackoverflow.com/questions/17053466/

相关文章:

sql - 如何选择一个空的结果集?

javascript - 续表没有列 'id'

mysql - 左外连接和左连接一样吗?

mysql - 拒绝访问;您需要(至少一个) super 权限才能执行此操作

mysql - 在 MySQL 中存储 IPv6 地址

mysql - 从 MySQL 滚动删除旧行的最佳方法是什么?

php - 在 PHP/MySQL 中将日期时间存储为 UTC

mysql - 为什么 MySQL 会在 FULL OUTER JOIN 上报告语法错误?

php - 在 PHP 中运行 MySQL *.sql 文件

java - hibernate 条件查询以获取特定列