网站搜索

使用 PHP 将数据插入 MySQL 数据库


PHP MySQL 插入数据

创建 MySQL 数据库和表后,我们可以开始在其中插入数据(即记录)。在本教程中,我们将学习如何在 XAMPP 堆栈中使用 PHP 在 MySQL 数据库中插入数据。

先决条件

确保您的系统中已设置 XAMPP 堆栈。以下指南解释了如何在 Linux 中设置 XAMPP 堆栈。

  • 如何在 Linux 中安装 XAMPP

或者,您可以使用同时提供 PHP 和 MySQL 的 LAMP 或 LEMP 堆栈。如果您使用的是 Linux,请参阅以下指南来安装 LAMP/LEMP 堆栈。

  • 在 Ubuntu 20.04 LTS 上安装 Apache、MySQL、PHP(LAMP 堆栈)
  • 在 Ubuntu 20.04 LTS 上安装 Nginx、MySQL、PHP (LEMP Stack)
  • 在 CentOS 8 中安装 Apache、MariaDB、PHP(LAMP 堆栈)
  • 在 Arch Linux 上安装 Apache、MariaDB、PHP (LAMP) 堆栈
  • 在 Arch Linux 上安装 Nginx、MariaDB、PHP (LEMP) 堆栈

设置 XAMPP 比 LAMP 和 LEMP 堆栈容易得多。因此,我们将在本指南中使用 XAMPP 堆栈。

设置 XAMPP 堆栈后,您需要创建 MySQL 数据库和数据库内的表。请参阅以下指南了解如何在 XAMPP 堆栈中创建 MySQL 数据库和表。

  • 在XAMPP中使用PHP创建MySQL数据库和表

出于演示目的,我将在 XAMPP 堆栈中名为 "my_company" 的数据库中创建一个名为 "sales" 的表。

使用 PHP 将数据插入 MySQL 数据库

我们可以在 MySQL 表中一次插入一条记录或多条记录。首先,我们将了解如何插入单个记录。

使用 PHP 在 MySQL 表中插入单条记录

我们将在 PHP 代码中使用 SQL 查询语句在表中插入一条记录。我们可以使用 INSERT 命令将单个记录/行插入表中。

查询语法:

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

(或者)

INSERT INTO table_name VALUES (value1,value2,………….)

其中,table_name 表示表的名称,columns 表示列名称和插入表中的值。

脚步

1. 在 PHP 代码中指定服务器名称、MySQL 用户名、密码和数据库名称。

这里,服务器名称是localhost,用户名是root,密码为空。数据库名称是 my_company,我们在该数据库中创建一个名为“sales”的表。

2. 使用上述详细信息创建连接。

通过使用my_sqli_connect()函数,我们将建立一个连接。它将需要三个参数。第一个是服务器名称,第二个是用户名,最后一个是密码。它还将采用此处可选的数据库名称,因为我们只是创建连接。

代码:

$connection = mysqli_connect($server_name, $user_name, $password,$database_name)

3.检查连接。

我们可以使用 if 条件中指定的 mysqli_connect_error() 函数检查连接。如果连接失败,此函数将显示错误。

4. 指定 SQL 查询以将单个记录插入表中。

在此步骤中,我们指定 SQL 查询以将值插入数据库。假设数据库名称为“my_company”,我们将其存储在名为query的变量中。表名称为“sales”,包含三列。

代码:

$query = "INSERT INTO table_name (id,name,count) VALUES (1,'Cooking-Gas',40)";

5.检查创建。

如果我们想检查是否插入了值,我们可以使用 mysqli_query() 函数。

代码:

mysqli_query($connection, $query)

它需要两个参数。

  • $connection 参数指定连接详细信息。
  • $query 参数是我们用来在表中插入记录/行的 SQL 查询

如果此条件为 True,则将插入一行。否则会返回错误。我们可以使用mysqli_error($connection)函数检查错误。

6.关闭连接。

这是最后一步,我们必须使用 mysqli_close() 函数关闭连接。

代码:

mysqli_close($connection);

现在让我们根据上述步骤编写一个示例 PHP 代码。

在 MySQL 表中插入一条记录的 PHP 代码

在 /htdocs 文件夹下创建一个名为 insert.php 的新文件,其中包含以下内容。

注意:如果您使用 Linux,htdocs 文件夹将位于 /opt/lampp/ 目录下。如果您使用的是 Windows,htdocs 通常位于 C:\xampp\ 文件夹中。

<?php
//specify the server name and here it is localhost
$server_name = "localhost";

//specify the username - here it is root
$user_name = "root";

//specify the password - it is empty
$password = "";

//specify the database name - "my_company"
$database_name = "my_company";

// Creating the connection by specifying the connection details
$connection = mysqli_connect($server_name, $user_name, $password,$database_name);

//sql query to insert a row into sales table
$query = "INSERT INTO sales (id,name,count) VALUES (1,'Cooking-Gas',40)";
if (mysqli_query($connection, $query)) {
  echo "record Inserted Successfully";
} else {
  echo "Error:" . mysqli_error($connection);
}

//close the connection
mysqli_close($connection);
?>

在上面的代码中,“my_company”是数据库名称,“sales”是表名称。

打开 Web 浏览器并导航至 http://localhost/insert.php。您将在浏览器窗口中看到类似这样的输出。

在 MySQL 表中插入一条记录

您还可以验证记录/行是否也是从 phpMyAdmin 插入的。为此,请从浏览器导航到 http://localhost/phpmyadmin URL,打开 phpMyAdmin 仪表板。

转到my_company -> sales,然后单击浏览以查看插入的记录。

查看MySQL表中的记录

如您所见,我们已成功在 my_company 数据库中名为“sales”的表中插入一条记录。

使用 PHP 在 MySQL 表中插入多条记录

我们可以使用 INSERT 命令将多个记录/行插入表中。

查询语法:

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

(或者)

INSERT INTO table_name VALUES (value1,value2,………….)

其中,table_name代表MySQL表的名称,columns代表要插入表中的列名和值。

脚步

1.指定服务器名称、MySQL 用户名、密码和数据库名称。

这里,服务器名称是localhost,用户名是root,密码为空。数据库名称是“my_company”,我们正在该数据库中创建一个表。

2. 使用上述详细信息创建连接。

通过使用mysqli_connect()函数,我们将建立一个连接。它将需要三个参数。第一个是服务器名称,第二个是用户名,最后一个是密码。它还将采用此处可选的数据库名称,因为我们只是创建连接。

代码:

$connection = mysqli_connect($server_name, $user_name, $password,$database_name);

3.检查连接。

我们可以使用 if 条件中指定的 mysqli_connect_error() 函数检查连接。如果连接失败,此函数将表示错误。

4. 指定向表中插入多条记录的 SQL 查询。

在此步骤中,我们指定 SQL 查询以将值插入数据库的变量中。让数据库名称为my_company,我们将存储在名为query的变量中。表名称为 sales,包含三列。

代码:

$query = "INSERT INTO table_name (id,name,count) VALUES (5,'Shampoo',10);";
$query .= "INSERT INTO table_name (id,name,count) VALUES (2,'Milk',20);";
$query .= "INSERT INTO table_name (id,name,count) VALUES (3,'Books',14);";
$query .= "INSERT INTO table_name (id,name,count) VALUES (4,'Chocos',45);";
$query .= "INSERT INTO table_name (id,name,count) VALUES (6,'Eggs',12)";

注意:请注意第二个中的点 (.) 以及后续的 SQL 查询。您需要在从第二个查询开始的等号前面放置一个点(.)。

5.检查创建。

如果我们想检查值是否插入,我们可以使用 mysqli_query() 函数。

代码:

mysqli_query($connection, $query)

如您所见,它需要两个参数。

  • $connection 参数指定连接详细信息。
  • $query 参数是我们用来在表中插入多行的sql查询

如果此条件为 True,则将插入行。否则会返回错误。我们可以使用mysqli_error($connection)函数检查错误。

6.关闭连接。

这是最后一步,我们必须使用 mysqli_close() 函数关闭连接。

代码:

mysqli_close($connection);

现在让我们根据上述步骤编写一个示例 PHP 代码来插入 5 条记录。

在 MySQL 表中插入多条记录的 PHP 代码

在 /htdocs 文件夹下创建一个名为 insert_multiple.php 的新文件,其中包含以下内容。

<?php
//specify the server name and here it is localhost
$server_name = "localhost";

//specify the username - here it is root
$user_name = "root";

//specify the password - it is empty
$password = "";

//specify the database name - "my_company"
$database_name = "my_company";

// Creating the connection by specifying the connection details
$connection = mysqli_connect($server_name, $user_name, $password,$database_name);

//sql query to insert 5 rows into sales table
$query = "INSERT INTO sales (id,name,count) VALUES (5,'Shampoo',10);";
$query .= "INSERT INTO sales (id,name,count) VALUES (2,'Milk',20);";
$query .= "INSERT INTO sales (id,name,count) VALUES (3,'Books',14);";
$query .= "INSERT INTO sales (id,name,count) VALUES (4,'Chocos',45);";
$query .= "INSERT INTO sales (id,name,count) VALUES (6,'Eggs',12)";

if (mysqli_multi_query($connection, $query)) {
  echo "records Inserted Successfully";
} else {
  echo "Error:" . mysqli_error($connection);
}

//close the connection
mysqli_close($connection);
?>

打开网络浏览器并导航至 http://localhost/insert_multiple.php。您将在浏览器窗口中看到类似这样的输出。

在 MySQL 表中插入多条记录

让我们验证记录是否实际从 phpMyAdmin 仪表板插入。

从浏览器导航到 http://localhost/phpmyadmin URL 打开 phpMyAdmin 仪表板。转到my_company-> sales,然后单击浏览按钮查看插入的记录。

通过PhpMyAdmin查看MySQL表中的记录

结论

在本教程中,我们讨论了如何使用 XAMPP 堆栈中的 PHP 代码将数据插入 MySQL 数据库。我们提供了两个示例 PHP 代码来演示如何在 MySQL 表中插入单个和多个记录。

根据您的要求更改代码并在您的系统上测试它们。如果您有任何疑问,请通过下面的评论部分告诉我们。

阅读下一步:

  • 如何在 XAMPP 堆栈中使用 PHP 从 MySQL 数据库中选择数据

相关文章