Blogger Information
Blog 42
fans 3
comment 2
visits 32144
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
PHP第二十五天作业-mysql预处理更新和删除操作-2018-05-07
HeartofSunny的博客
Original
694 people have browsed it

实例

<?php
//使用预处理实现更新和删除操作
//连接数据库
//1.连接参数
$db_host = 'localhost';
$db_user = 'root';
$db_pass = 'root';
$db_name = 'php';
$db_charset = 'utf8';

//2.连接数据库服务器,并返回mysqli对象
$mysqli = @new mysqli($db_host,$db_user,$db_pass);

//3.检测是否连接成功
if ($mysqli->connect_errno) {
    exit('连接错误'.$mysqli->connect_errno.':'.$mysqli->connect_error);
}

//4.设置默认数据库
$mysqli->select_db($db_name);

//5.设置客户端默认字符编码集
$mysqli->set_charset($db_charset);

//二、预处理数据库更新操作
//1.准备SQL语句
//更新语句
//$sql = "UPDATE user SET user_name=? where user_id = ?;";
//删除语句
$sql = "DELETE FROM user WHERE user_name = ?;";

//2.创建STMT预处理对象
$stmt = mysqli_stmt_init($mysqli);

//3.用stmt对象检测预处理语句是否正确,成功返回true,错误返回false
if(mysqli_stmt_prepare($stmt,$sql)){
    /* 将变量与SQL语句中的占位符进行绑定 */
    //mysqli_stmt_bind_param($stmt,'si',$name,$id);
    mysqli_stmt_bind_param($stmt,'s',$name);
    $name = 'test';
    $id = 2;
    /* 执行SQL语句 */
    if(mysqli_stmt_execute($stmt)) {
        //判断是否执行成功:受影响的记录数量
        if (mysqli_stmt_affected_rows($stmt) > 0) {
            echo '修改成功';
        } else {
            echo '没有修改任何数据';
        }
    }else { //返回SQL执行阶段的错误
        exit(mysqli_stmt_errno($stmt).':'.mysqli_stmt_error($stmt));
    }
}else { //返回SQL检测阶段的错误
    exit(mysqli_stmt_errno($stmt).':'.mysqli_stmt_error($stmt));
}

/* 注销stmt对象 */
mysqli_stmt_close($stmt);

/* 关闭数据库连接 */
mysqli_close($mysqli);

运行实例 »

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

总结:

在使用预处理过程中本来想使用多条语句同时执行,但是执行的时候系统出错了,我把多条语句放到数据库中是可以执行的,所以目前还是只能单条执行。不知道是没有这个功能还是哪里出了问题,由于时间关系,我以后再来查看是否能使用预处理执行多条语句。

Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post