一、知识点梳理
(一)使用PHP连接到MySQL服务器

-
安装必要的软件:
在基于Ubuntu的系统上,可以使用以下命令:sudo apt-get install php mysql-server php-mysql -
启动MySQL服务:
使用以下命令:sudo service mysql start -
创建MySQL数据库和用户:
登录MySQL并创建一个数据库以及一个可以连接到该数据库的用户。替换<your_database>和<your_user>为使用的数据库和用户名。mysql -u root -pCREATE DATABASE <your_database>; CREATE USER '<your_user>'@'localhost' IDENTIFIED BY '<your_password>'; GRANT ALL PRIVILEGES ON <your_database>.* TO '<your_user>'@'localhost'; FLUSH PRIVILEGES; -
编写PHP代码连接到MySQL:
创建一个PHP文件,例如connect.php,并使用以下代码连接到MySQL数据库。<your_database>,<your_user>, 和<your_password>为设置的数据库名、用户名和密码。<?php $servername = "localhost"; $username = "<your_user>"; $password = "<your_password>"; $dbname = "<your_database>"; // 创建连接 $conn = new mysqli($servername, $username, $password, $dbname); // 检测连接 if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } echo "Connected successfully"; $conn->close(); ?>保存文件并在浏览器中打开该文件,如果一切设置正确,将会显示 "Connected successfully"。
(二)使用PHP创建数据库表
可以使用PHP执行 SQL 查询语句来创建数据库表。以下是一个简单的示例:
<?php
$servername = "localhost";
$username = "<your_user>";
$password = "<your_password>";
$dbname = "<your_database>";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检测连接
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
// SQL 查询,创建表
$sql = "CREATE TABLE users (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
)";
if ($conn->query($sql) === TRUE) {
echo "Table 'users' created successfully";
} else {
echo "Error creating table: " . $conn->error;
}
// 关闭连接
$conn->close();
?>
在这个例子中,我们使用 CREATE TABLE SQL 查询语句创建了一个名为 users 的表,该表包含 id、firstname、lastname、email 和 reg_date 列。你可以根据自己的需求修改表的结构。
确保替换 <your_user>, <your_password>, 和 <your_database> 为你的实际数据库用户名、密码和数据库名。保存文件并在浏览器中运行它,如果一切设置正确,将会显示 "Table 'users' created successfully"。
(三)使用PHP将记录插入表中
<?php
$servername = "localhost";
$username = "<your_user>";
$password = "<your_password>";
$dbname = "<your_database>";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检测连接
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
// 准备要插入的数据
$firstname = "John";
$lastname = "Doe";
$email = "john@example.com";
// SQL 查询,插入数据
$sql = "INSERT INTO users (firstname, lastname, email)
VALUES ('$firstname', '$lastname', '$email')";
if ($conn->query($sql) === TRUE) {
echo "New record inserted successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
// 关闭连接
$conn->close();
?>
在这个例子中,我们使用 INSERT INTO SQL 查询语句将一条记录插入到名为 users 的表中。我们指定了要插入的 firstname、lastname 和 email 值。 <your_user>, <your_password>, 和 <your_database> 为实际数据库用户名、密码和数据库名。修改 $firstname、$lastname 和 $email 变量以插入想要的数据。保存文件并在浏览器中运行它,如果一切设置正确,将会显示 "New record inserted successfully"。
(四)使用PHP删除行
要使用PHP删除数据库表中的行,你可以使用 DELETE SQL 查询语句。以下是一个简单的示例:
<?php
$servername = "localhost";
$username = "<your_user>";
$password = "<your_password>";
$dbname = "<your_database>";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检测连接
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
// 准备要删除的数据条件
$id_to_delete = 1; // 你要删除的记录的id
// SQL 查询,删除数据
$sql = "DELETE FROM users WHERE id = $id_to_delete";
if ($conn->query($sql) === TRUE) {
echo "Record deleted successfully";
} else {
echo "Error deleting record: " . $conn->error;
}
// 关闭连接
$conn->close();
?>
在这个例子中,我们使用 DELETE FROM SQL 查询语句删除了 users 表中 id 为 $id_to_delete 的记录。 <your_user>, <your_password>, 和 <your_database> 为实际数据库用户名、密码和数据库名。修改 $id_to_delete 变量以指定要删除的记录的id。保存文件并在浏览器中运行它,如果一切设置正确,将会显示 "Record deleted successfully"。
二、自主学习
(一)实战演练




(二)苏格拉底挑战



