PHP MySQL 插入数据学习笔记

前言

在Web应用程序中,将数据存储在数据库中是非常重要的一环。而插入(insert)数据是最基本也是最常见的操作之一,因为我们总是需要在数据库中添加新的数据行。

在PHP中,可以使用MySQLi或PDO等扩展来操作MySQL数据库。无论您使用哪种扩展,插入数据的过程都非常相似。下面将介绍如何使用MySQLi扩展插入数据。

插入数据流程

插入数据的流程大致分为以下几个步骤:

  1. 连接到数据库
  2. 构建INSERT语句
  3. 执行INSERT语句
  4. 关闭数据库连接

具体实现代码如下:

phpCopy Code
// 1.连接到数据库 $conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } // 2.构建INSERT语句 $sql = "INSERT INTO MyGuests (firstname, lastname, email) VALUES ('John', 'Doe', 'john@example.com')"; // 3.执行INSERT语句 if ($conn->query($sql) === TRUE) { echo "New record created successfully"; } else { echo "Error: " . $sql . "<br>" . $conn->error; } // 4.关闭数据库连接 $conn->close();

在上面的代码中,我们使用了MySQLi扩展来连接到数据库,构建INSERT语句,并执行语句。

示例

下面我们来举一个实际的例子,假设我们有一个用户注册页面,用户填写了姓名、密码和电子邮件地址后,我们需要将这些信息存储在一个MySQL数据库表中。

首先,需要创建一个名为users的表,该表包含以下三列:

  • id:主键,自动递增
  • name:VARCHAR类型,保存用户姓名
  • email:VARCHAR类型,保存用户邮箱
  • password:VARCHAR类型,保存用户密码

可以使用以下SQL语句创建该表:

sqlCopy Code
CREATE TABLE users ( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, name VARCHAR(30) NOT NULL, email VARCHAR(50) NOT NULL, password VARCHAR(255) NOT NULL )

接下来,我们可以创建一个名为register.php的PHP文件,用于处理用户提交的注册表单数据并将其插入到数据库中。

phpCopy Code
<?php // 连接到数据库 $conn = new mysqli("localhost", "username", "password", "mydb"); if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } // 处理POST请求并插入数据 if ($_SERVER["REQUEST_METHOD"] == "POST") { $name = $_POST["name"]; $email = $_POST["email"]; $password = password_hash($_POST["password"], PASSWORD_DEFAULT); $sql = "INSERT INTO users (name, email, password) VALUES ('$name', '$email', '$password')"; if ($conn->query($sql) === TRUE) { echo "注册成功"; } else { echo "Error: " . $sql . "<br>" . $conn->error; } } // 关闭数据库连接 $conn->close(); ?>

在上面的代码中,我们首先使用MySQLi扩展连接到数据库。然后,我们检查是否接收到POST请求,并从$_POST超全局变量中获取提交的数据。接下来,我们使用password_hash()函数对密码进行哈希处理,并构建INSERT语句将数据插入到users表中。

最后,需要注意的是,关闭数据库连接非常重要,因为它释放了与数据库的所有资源和连接。

总结

本文介绍了如何使用PHP MySQLi扩展插入数据,并提供了一个实际的例子。在开发Web应用程序时,理解如何操作数据库是非常重要的一环,希望这篇学习笔记可以帮助您更好地掌握PHP MySQL插入数据的技能。