【发布时间】:2020-08-14 07:48:05
【问题描述】:
我正在尝试创建一个 INSERT 以使用表单将数据添加到数据库,但它为日期设置了“0000-00-00”,为其他整数/浮点数设置了“0”,没有任何价值对于 VARCHAR。
<form action = "display.php" method = "post">
<h3> Add a Product </h3>
<input type = "text" id = "product_number" name = "product_number" cols=75 minlength="4" maxlength="4" placeholder = "Product Number" required>
<br>
<input type = "text" id = "supplier_id" name = "supplier_id" cols=75 minlength="4" maxlength="4" placeholder = "Supplier ID">
<br>
<input type = "text" id = "date" name = "date" cols=75 placeholder = "yyyy-mm-dd">
<br>
<input type = "number" id = "quantity" name = "quantity" cols=75 placeholder = "Quantity">
<br>
<input type = "text" id = "description" name = "description" cols=75 maxlength="50" placeholder = "Description">
<br>
<input type = "text" id = "price" name = "price" cols=75 placeholder = "Price">
<br>
<button type = "submit" name = "submit" cols=75 value = "Add"> Add Product to Database </button>
</form>
</div>
<br>
<br>
<br>
<?php
$product_number = mysqli_real_escape_string($conn, $_POST['product_number']);
$supplier_id = mysqli_real_escape_string($conn, $_POST['supplier_id']);
$date = mysqli_real_escape_string($conn, $_POST['date']);
$quantity = mysqli_real_escape_string($conn, $_POST['quantity']);
$description = mysqli_real_escape_string($conn, $_POST['description']);
$price = mysqli_real_escape_string($conn, $_POST['price']);
$sql = "INSERT into products (product_number, supplier_id, date, quantity, description, price) values ('$product_number', '$supplier_id', '$date', '$quantity', '$description', '$price')";
if(mysqli_query($conn, $sql)) {
echo "";
} else {
echo "";
}
mysqli_close($conn);
?>
【问题讨论】:
-
请使用文本而不是代码的图像。
-
对不起!我添加了我正在努力解决的代码。数据库可以工作,但它输入的是“0”而不是我尝试使用表单添加的值。
-
我不确定我是否遇到了您的问题,但我建议您将日期的输入从文本更改为日期(type = "text" --> type="date"),这将帮助您日期格式,您将在接下来的步骤中避免一些问题