博主信息
博文 60
粉丝 0
评论 1
访问量 46039
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
MYSQLI预处理中的删除-4月25日
威灵仙的博客
原创
820人浏览过

预处理的好处

1.防止SQL注入

2.一条语句多次使用

预处理步骤

    准备工作:连接数据库,准备SQL语句

创建预处理对象

检测SQL语句

参数绑定

执行操作

销毁对象

关闭数据库连接


预处理的增删改查示例

其实呢,预处理的增删改查基本操作都一样

下面呢  我把他们一样的拿出来,

基本样式

1连接数据库,准备SQL语句 sql语句中的值必须为问号,且顺序不能乱

require 'connect.php';

$sql = "INSERT IGNORE aaa SET name=?,age=?,money=?;";

//    给变量赋值
$name= '西施妹妹';
$age=16;
$money=5600;

创建预处理对象/检测SQL语句---这两句是公共样式

//创建stmt预处理对象
$stmt = mysqli_stmt_init($db);

//检测SQL语句
//mysqli_stmt_prepare()
if(mysqli_stmt_prepare($stmt,$sql)){

参数绑定--参数就是根据你要与处理得参数来定,注意一下他们的类型

   //讲变量与SQL语句的占位符进行绑定
//    mysqli_stmt_bind_param()
    mysqli_stmt_bind_param($stmt,"sii",$name,$age,$money);

执行操作 ----增删改的执行是一样的,查的不一样,继续往下看 ,下边上实例

//    执行SQL语句
//    mysqli_stmt_execute()
    mysqli_stmt_execute($stmt);
    //更新条数
    echo '新增了'.mysqli_stmt_affected_rows($stmt).'条,ID是:'.mysqli_stmt_insert_id($stmt);

销毁对象/关闭数据库连接---公共样式

}
//关闭
mysqli_stmt_close($stmt);

mysqli_close($db);

光这样看也看不出个啥  下面把增删改查的实例放上来瞅瞅

实例

<?php

require 'connect.php';

$sql = "DELETE FROM aaa  WHERE id=?;";

//    给变量赋值
$id = 34;

//创建stmt预处理对象
$stmt = mysqli_stmt_init($db);

//检测SQL语句
//mysqli_stmt_prepare()
if(mysqli_stmt_prepare($stmt,$sql)){

    //讲变量与SQL语句的占位符进行绑定
//    mysqli_stmt_bind_param()
    mysqli_stmt_bind_param($stmt,"i",$id);


//    执行SQL语句
//    mysqli_stmt_execute()
    mysqli_stmt_execute($stmt);

    //更新条数
    echo '删除了'.mysqli_stmt_affected_rows($stmt).'条';


}
//关闭
mysqli_stmt_close($stmt);

mysqli_close($db);

运行实例 »

点击 "运行实例" 按钮查看在线实例

改:

实例

<?php

require 'connect.php';

$sql = "INSERT IGNORE aaa SET name=?,age=?,money=?;";

//    给变量赋值
$name= '西施妹妹';
$age=16;
$money=5600;

//创建stmt预处理对象
$stmt = mysqli_stmt_init($db);

//检测SQL语句
//mysqli_stmt_prepare()
if(mysqli_stmt_prepare($stmt,$sql)){

    //讲变量与SQL语句的占位符进行绑定
//    mysqli_stmt_bind_param()
    mysqli_stmt_bind_param($stmt,"sii",$name,$age,$money);

//    执行SQL语句
//    mysqli_stmt_execute()
    mysqli_stmt_execute($stmt);

//更新条数
    echo '新增了'.mysqli_stmt_affected_rows($stmt).'条,ID是:'.mysqli_stmt_insert_id($stmt);


}
//关闭
mysqli_stmt_close($stmt);

mysqli_close($db);

运行实例 »

点击 "运行实例" 按钮查看在线实例


批改状态:未批改

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系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+教程免费学