php插入重复记录

时间:2014-02-19 12:52:37

标签: php mysql sql

我是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条记录?

谢谢

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));
}

只需删除其中一个