首先通过MySQLi面向对象方式连接数据库,接着使用预处理语句实现增删改查:1. 创建用户并插入数据;2. 查询所有用户信息并展示;3. 根据ID更新指定用户;4. 根据ID删除用户;5. 提供表结构及安全建议,确保操作安全与可维护性。

在PHP开发中,实现数据的增删改查(CRUD)是基本且核心的功能。通常结合MySQL数据库使用,通过PHP连接数据库完成创建(Create)、读取(Read)、更新(Update)和删除(Delete)操作。下面以MySQLi面向对象方式为例,完整演示如何实现PHP中的CRUD功能。
1. 数据库连接配置
首先创建数据库连接文件 db.php,用于统一管理数据库连接:
$host = 'localhost'; $username = 'root'; $password = ''; $dbname = 'test_db';$conn = new mysqli($host, $username, $password, $dbname);
if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); }
2. 创建数据(Create)
向数据库插入新记录,例如添加一条用户信息:
立即学习“PHP免费学习笔记(深入)”;
function createUser($conn, $name, $email) {
$stmt = $conn->prepare("INSERT INTO users (name, email) VALUES (?, ?)");
$stmt->bind_param("ss", $name, $email);
if ($stmt->execute()) {
echo "用户添加成功";
} else {
echo "错误: " . $stmt->error;
}
$stmt->close();}
JaManaGe 企业建站系统2.0 GBK
aManaGe企业建站系统具有完善的企业网站后台管理功能,能通过后台简单操作实现大量的信息更新。完善的系统,产品,新闻,人才和客户服务等功能更让你的企业便利于网上办公。通用的后台管理功能更方便企业的网站管理,我们更提供全面的在线技术支持。让你用得称心。JaManaGe企业建站系统 2.0 功能介绍:一、系统管理:管理员管理,可以新增管理员及修改管理员密码;数据库备份,为保证您的数据安全本系统采用了
下载
// 使用示例
createUser($conn, "张三", "zhangsan@example.com");
3. 读取数据(Read)
从数据库查询并显示所有用户信息:
function getUsers($conn) {
$result = $conn->query("SELECT id, name, email FROM users");
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
echo "ID: " . $row["id"] . " - 名字: " . $row["name"] . " - 邮箱: " . $row["email"] . "zuojiankuohaophpcnbryoujiankuohaophpcn";
}
} else {
echo "暂无数据";
}}
// 调用显示
getUsers($conn);
4. 更新数据(Update)
根据ID修改指定用户的姓名和邮箱:
function updateUser($conn, $id, $name, $email) {
$stmt = $conn->prepare("UPDATE users SET name = ?, email = ? WHERE id = ?");
$stmt->bind_param("ssi", $name, $email, $id);
if ($stmt->execute()) {
echo "用户更新成功";
} else {
echo "更新失败: " . $stmt->error;
}
$stmt->close();}
// 示例:更新ID为1的用户
updateUser($conn, 1, "李四", "lisi@example.com");
5. 删除数据(Delete)
根据ID删除某条用户记录:
function deleteUser($conn, $id) {
$stmt = $conn->prepare("DELETE FROM users WHERE id = ?");
$stmt->bind_param("i", $id);
if ($stmt->execute()) {
echo "用户删除成功";
} else {
echo "删除失败: " . $stmt->error;
}
$stmt->close();}
// 示例:删除ID为1的用户
deleteUser($conn, 1);
6. 完整表结构参考
确保数据库中存在对应的表结构:
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
email VARCHAR(100) NOT NULL UNIQUE
);
整个流程中,使用预处理语句(prepare/bind_param)可有效防止SQL注入,提升安全性。将增删改查封装成函数便于复用,适合小型项目或学习使用。实际开发中可结合前端表单与POST请求触发对应操作。
基本上就这些,掌握这些基础操作后,可以进一步扩展分页、搜索、事务处理等功能。不复杂但容易忽略细节,比如连接关闭、错误处理和输入验证。建议在正式环境中加入更完整的异常捕获和用户输入过滤机制。










