我是php的新手。我已经下载了xampp并创建了一个包含2列ID(主键,自动增量),CENA(INT值)的数据库
在我的index.php中,我只有一个输入文本和一个提交按钮:
<body>
<form action="submit.php" method="post">
<input type="text" name="cena"><label> cena</label>
<input type="submit" value="Submit">
</form>
</body>
这是我的提交脚本:
$sql = "INSERT INTO updat (CENA) VALUES ('$_POST[cena]')";
mysqli_query($con, $sql);
if (!mysqli_query($con, $sql))
{
die('Error: ' . mysqli_error($con));
}
echo "1 record added";
mysqli_close($con);
当我在文本输入中输入一个值时,点击提交按钮就会回显:“添加了1条记录” 但是当我在phpMyAdmin中查看我的数据库时,我看到了2条记录。
实施例
我输入123进入textinput
在phpMyAdmin中我看到了:
+----+------+ | ID | CENA | +----+------+ | 1 | 123 | | 2 | 123 | +----+------+
我没有使用任何循环所以为什么有2条记录?
谢谢
答案 0 :(得分:6)
这是你使用两次mysqli_query
:
mysqli_query($con,$sql)
所以,首先当你插入数据时,以及在你检查if()
语句之后,所以只需删除第一个mysql_query,例如以这种方式:
$sql="INSERT INTO updat (CENA) VALUES ('$_POST[cena]')";
if (!mysqli_query($con,$sql))
{
die('Error: ' . mysqli_error($con));
}
答案 1 :(得分:-1)
您在这里使用INSERT
语句2次。
mysqli_query($con,$sql); //Remove this line
if (!mysqli_query($con,$sql))
{
die('Error: ' . mysqli_error($con));
}
只需删除其中一个