PHP未将数据插入MySQL但未显示错误

时间:2019-01-02 11:11:27

标签: php html mysql forms

我正在尝试使用PHP和HTML表单将数据输入到MySQL数据库中,但是即使数据显示已保存,也没有将其保存到数据库中。请告诉我如何确保表单条目保存到数据库中。

HTML

<form action="newproduct.php" method="post">
<table>
<tr>
<td>Username</td>
<td><input name="user" type="text"></td>
</tr> ...

<button type="submit">Go</button>
</form>

PHP

<?php
$servername = "localhost";
$username = $_POST["user"];
$password = $_POST["pass"];
$dbname = "bakefree_products";

$conn = mysqli_connect($servername, $username, $password, $dbname);
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

$sql = "INSERT INTO ".$_POST["range"]." (productname, image, frompricesize, paypalcode, productdesc, allergystandard, allergyglutenfree, allergyvegan, allergygfvegan)
VALUES ('".$_POST["productname"]."', '".$_POST["image"]."', '".$_POST["frompricesize"]."', '".$_POST["paypalcode"]."', '".$_POST["productdesc"]."', '".$_POST["allergystandard"]."', '".$_POST["allergyglutenfree"]."', '".$_POST["allergyvegan"]."', '".$_POST["allergygfvegan"]."')";



if (mysqli_query($conn, $sql)) {
    echo "New product created successfully.";
} else {
    echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}

//show new number of products
$sql = "SELECT * FROM".$_POST["range"];
$result = $conn->query($sql);
if ($result->num_rows > 0) {echo "There are ".$result->num_rows ." products.";
} else {
    echo "<br><br>There are no products in ".$_POST["range"];
}

mysqli_close($conn);
?>

结果

  

成功创建了新产品。

     

测试中没有产品

1 个答案:

答案 0 :(得分:0)

实际上插入应该可以正常工作,但是您需要在此处检查select查询的语法,

//show new number of products
$sql = "SELECT * FROM ".$_POST["range"]; // Added a space after `FROM`

它应该正确获取数据并向您显示字符串There are X products.