值得一看
广告
彩虹云商城
广告

热门广告位

php数据库如何实现增删改查 php数据库基本操作的综合教程

使用PDO实现PHP数据库操作,需通过预处理语句执行增删改查。1. 连接数据库时设置DSN和异常模式;2. 插入数据使用prepare与execute防止SQL注入;3. 查询用fetchAll或fetch获取结果;4. 更新和删除同样采用预处理绑定参数,确保安全。核心是始终使用预处理机制避免拼接SQL,保障应用安全。

php数据库如何实现增删改查 php数据库基本操作的综合教程

PHP操作数据库最常见的是通过MySQL配合PDO或mysqli扩展来实现增删改查(CRUD)。下面以PDO为例,讲解如何安全、高效地完成数据库的基本操作。

1. 连接数据库

使用PDO连接MySQL数据库,推荐使用DSN方式,并设置错误模式为异常模式,便于调试。

$host = 'localhost';
$dbname = 'test_db';
$username = 'root';
$password = '123456';
<p>try {
$pdo = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8", $username, $password);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
die("连接失败: " . $e->getMessage());
}</p>

注意:确保数据库字符集设为utf8或utf8mb4,避免中文乱码。

2. 插入数据(Create)

使用预处理语句防止SQL注入,是安全插入数据的关键。

立即学习“PHP免费学习笔记(深入)”;

$sql = "INSERT INTO users (name, email, age) VALUES (?, ?, ?)";
$stmt = $pdo->prepare($sql);
$name = '张三';
$email = 'zhangsan@example.com';
$age = 25;
<p>if ($stmt->execute([$name, $email, $age])) {
echo "插入成功,新ID:" . $pdo->lastInsertId();
}</p>

也可以使用命名占位符,提高可读性:

腾讯智影-AI数字人

腾讯智影-AI数字人

基于AI数字人能力,实现7*24小时AI数字人直播带货,低成本实现直播业务快速增增,全天智能在线直播

腾讯智影-AI数字人73

查看详情
腾讯智影-AI数字人

$sql = "INSERT INTO users (name, email, age) VALUES (:name, :email, :age)";
$stmt = $pdo->prepare($sql);
$stmt->execute([':name' => $name, ':email' => $email, ':age' => $age]);

3. 查询数据(Read)

根据条件查询单条或多条记录,使用fetch或fetchAll获取结果。

// 查询所有用户
$sql = "SELECT * FROM users";
$stmt = $pdo->query($sql);
$users = $stmt->fetchAll(PDO::FETCH_ASSOC);
<p>foreach ($users as $user) {
echo "姓名:{$user['name']},邮箱:{$user['email']}<br>";
}</p><p>// 查询单条记录
$sql = "SELECT * FROM users WHERE id = ?";
$stmt = $pdo->prepare($sql);
$stmt->execute([1]);
$user = $stmt->fetch(PDO::FETCH_ASSOC);</p><p>if ($user) {
echo "找到用户:{$user['name']}";
} else {
echo "用户不存在";
}</p>

4. 更新数据(Update)

更新操作同样建议使用预处理语句,绑定参数防止风险。

$sql = "UPDATE users SET name = ?, email = ? WHERE id = ?";
$stmt = $pdo->prepare($sql);
$newName = '李四';
$newEmail = 'lisi@example.com';
$id = 1;
<p>if ($stmt->execute([$newName, $newEmail, $id])) {
echo "更新成功,影响行数:" . $stmt->rowCount();
}</p>

5. 删除数据(Delete)

删除操作要谨慎,务必确认WHERE条件准确。

$sql = "DELETE FROM users WHERE id = ?";
$stmt = $pdo->prepare($sql);
$id = 1;
<p>if ($stmt->execute([$id])) {
echo "删除成功,影响行数:" . $stmt->rowCount();
} else {
echo "删除失败";
}</p>

基本上就这些。掌握PDO的预处理机制和基本SQL语法,就能在PHP中安全实现数据库的增删改查。关键是始终使用prepare和execute,避免拼接SQL,提升应用安全性。

相关标签:

mysql php word 中文乱码 ai sql注入 邮箱 防止sql注入 php sql mysql mysqli pdo delete 数据库

大家都在看:

C++的静态链接和动态链接有什么区别_C++库链接方式与加载机制解析
C++如何使用Boost库_C++功能扩展与Boost常用组件介绍
composer怎么处理需要php-zip扩展的包_讲解如何处理依赖php-zip扩展的包
php-gd怎样裁剪图片_php-gd精确裁剪图片区域
composer install –no-autoloader有什么应用场景_解析–no-autoloader参数的使用场景
温馨提示: 本文最后更新于2025-10-21 22:37:53,某些文章具有时效性,若有错误或已失效,请在下方留言或联系在线客服
文章版权声明 1 本网站名称: 创客网
2 本站永久网址:https://new.ie310.com
1 本文采用非商业性使用-相同方式共享 4.0 国际许可协议[CC BY-NC-SA]进行授权
2 本站所有内容仅供参考,分享出来是为了可以给大家提供新的思路。
3 互联网转载资源会有一些其他联系方式,请大家不要盲目相信,被骗本站概不负责!
4 本网站只做项目揭秘,无法一对一教学指导,每篇文章内都含项目全套的教程讲解,请仔细阅读。
5 本站分享的所有平台仅供展示,本站不对平台真实性负责,站长建议大家自己根据项目关键词自己选择平台。
6 因为文章发布时间和您阅读文章时间存在时间差,所以有些项目红利期可能已经过了,能不能赚钱需要自己判断。
7 本网站仅做资源分享,不做任何收益保障,创业公司上收费几百上千的项目我免费分享出来的,希望大家可以认真学习。
8 本站所有资料均来自互联网公开分享,并不代表本站立场,如不慎侵犯到您的版权利益,请联系79283999@qq.com删除。

本站资料仅供学习交流使用请勿商业运营,严禁从事违法,侵权等任何非法活动,否则后果自负!
THE END
喜欢就支持一下吧
点赞8赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容