博主信息
博文 33
粉丝 0
评论 2
访问量 51914
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
PHP PDO 数据查询、删除实例
hanyufeng的博客
原创
3710人浏览过

说明:

在“PHP MySQLi 增删查改(CURD)实例-面向对象方法”(http://hanyufeng.php.cn/blog/detail/2155)的基础上,改用PDO对象实现。

示例源码:

connetc.php

<?php
//使用配置文件保存参数
require 'config.php';
//使用PDO对象
$pdo = new PDO('mysql:dbname='. DB_NAME,DB_USER, DB_PASS);//host取默认值
//$pdo = new PDO('mysql:dbname='. DB_NAME.';charset=utf8',DB_USER, DB_PASS);
$pdo->query('set names utf8');//设置字符集编码,注意不要写成utf-8。也可以在实例化PDO对象时设置,如上一行。

list.php 查询数据

<?php
$pageTitle = '用户信息列表';
include  'inc/header.php';

//连接数据库
require 'inc/connect.php';

//查询用户信息表user
$sql = "SELECT `id`,`name`,`email` FROM user";  //创建查询语句
$rows = [];  //创建查询结果容器,初始为空数组,该数组最终会成为一个二维数组,与数组表对应
try
{
    $pdo_stmt = $pdo->query($sql);//查询
    if ($pdo_stmt->rowCount() > 0) {//如果数据不为空        
        $i =0;
        while ($row = $pdo_stmt->fetch()) { //从结果集的第一条记录开始抓取数据到绑定的变量中
            //继续沿用$rows数组保存数据,以便重复使用输出数据到页面的代码
            $rows[$i] = ['id'=>$row['id'],'name'=>$row['name'],'email'=>$row['email']];
            $i++;
        }
    }
    else
    {
        echo '<p style="color:red">当前表中没有数据~~</p>';
    }
} catch (PDOException $e) {
    echo '<p>查询失败:'.$e->getMessage().'</p>';
}
?>

delete.php

<?php
require 'inc/connect.php';

//先查询,再更新/删除,更完善更安全
$id = $_GET['id'];
$sql = "select * FROM user WHERE id=".$id;
$pdo_stmt = $pdo->query($sql);

if($pdo_stmt->rowCount() == 1){ //按id查询,如果存在,只应返回1条记录
    $row = $pdo_stmt->fetch();
    $sql = "DELETE FROM user WHERE id=". $row['id'];

    try {
        $affected_rows = $pdo->exec($sql);
        if($affected_rows == 1){
            echo '<script>alert("成功删除'.$affected_rows.'条记录")</script>';
        } else {
            echo '<script>alert("删除失败")</script>';
        }
    } catch (PDOException $e) {
        echo $e->getMessage();
    }

}
else {
    echo '<p>要删除的记录不存在~~</p>';
}

要点:先查询,再更新/删除,是更完善更安全的处理方法。

本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学