PHP MySQL Insert Into

INSERT INTO 语句用于向数据库表中插入新记录。

向数据库表插入数据

INSERT INTO 语句用于向数据库表添加新记录。

语法

  1. INSERT INTO table_name
  2. VALUES (value1, value2,....)

您还可以规定希望在其中插入数据的列:

  1. INSERT INTO table_name (column1, column2,...)
  2. VALUES (value1, value2,....)

注释:SQL 语句对大小写不敏感。INSERT INTO 与 insert into 相同。

为了让 PHP 执行该语句,我们必须使用 mysql_query() 函数。该函数用于向 MySQL 连接发送查询或命令。

例子

在前面的章节,我们创建了一个名为 "Persons" 的表,有三个列:"Firstname", "Lastname" 以及 "Age"。我们将在本例中使用同样的表。下面的例子向 "Persons" 表添加了两个新记录:

  1. <?php
  2. $con = mysql_connect("localhost","peter","abc123");
  3. if (!$con)
  4. {
  5. die('Could not connect: ' . mysql_error());
  6. }
  7.  
  8. mysql_select_db("my_db", $con);
  9.  
  10. mysql_query("INSERT INTO Persons (FirstName, LastName, Age)
  11. VALUES ('Peter', 'Griffin', '35')");
  12.  
  13. mysql_query("INSERT INTO Persons (FirstName, LastName, Age)
  14. VALUES ('Glenn', 'Quagmire', '33')");
  15.  
  16. mysql_close($con);
  17. ?>

把来自表单的数据插入数据库

现在,我们创建一个 HTML 表单,这个表单可把新记录插入 "Persons" 表。

这是这个 HTML 表单:

  1. <html>
  2. <body>
  3.  
  4. <form action="insert.php" method="post">
  5. Firstname: <input type="text" name="firstname" />
  6. Lastname: <input type="text" name="lastname" />
  7. Age: <input type="text" name="age" />
  8. <input type="submit" />
  9. </form>
  10.  
  11. </body>
  12. </html>

当用户点击上例中 HTML 表单中的提交按钮时,表单数据被发送到 "insert.php"。"insert.php" 文件连接数据库,并通过 $_POST 变量从表单取回值。然后,mysql_query() 函数执行 INSERT INTO 语句,一条新的记录会添加到数据库表中。

下面是 "insert.php" 页面的代码:

  1. <?php
  2. $con = mysql_connect("localhost","peter","abc123");
  3. if (!$con)
  4. {
  5. die('Could not connect: ' . mysql_error());
  6. }
  7.  
  8. mysql_select_db("my_db", $con);
  9.  
  10. $sql="INSERT INTO Persons (FirstName, LastName, Age)
  11. VALUES
  12. ('$_POST[firstname]','$_POST[lastname]','$_POST[age]')";
  13.  
  14. if (!mysql_query($sql,$con))
  15. {
  16. die('Error: ' . mysql_error());
  17. }
  18. echo "1 record added";
  19.  
  20. mysql_close($con)
  21. ?>