Correction status:Uncorrected
Teacher's comments:
<meta charset="UTF-8"> <?php /** * 配置数据库连接参数 */ define ('DB_HOST', '127.0.0.1'); define ('DB_USER', 'root'); define ('DB_PASS', 'root'); define ('DB_NAME', 'php'); define ('DB_CHAR', 'utf8');
点击 "运行实例" 按钮查看在线实例
<?php /** * mysqli数据库连接 * 步骤: * 1. 创建连接参数 * 2. 调用连接函数,返回连接资源 * 3. 判断是否连接成功 * 4. 选择数据库 * 5. 设置默认字符集 * * 用到的函数 * 1. mysqli_connect($host,$user,$pass) * 2. mysqli_connect_errno($db) * 3. mysqli_connect_error($db) * 4. mysqli_select_db($dbName) * 5. mysqli_set_charset('utf8') */ //1. 创建连接参数 //创建连接参数: 因为连接参数不会经常变化,所以推荐使用常量 // define ('DB_HOST', '127.0.0.1'); // define ('DB_USER', 'root'); // define ('DB_PASS', 'root'); // define ('DB_NAME', 'php'); // define ('DB_CHAR', 'utf8'); //导入数据库连接参数 require 'mysqli_config.php'; //2. 调用连接函数,成功则返回mysqli对象,失败返回false $db = mysqli_connect(DB_HOST, DB_USER, DB_PASS); //var_dump($db);die(); //3. 测试连接是否成功? //连接失败一定会返回错误编号,可以根据编号判断,也可用 $db是否为false进行判断 //简化代码 $db = mysqli_connect(DB_HOST, DB_USER, DB_PASS,DB_NAME) or die('连接失败'.mysqli_connect_error($db)); if (mysqli_connect_errno($db)) { exit('连接失败'.mysqli_connect_error($db)); } echo '<h1>连接成功</h1>'; //4. 选择要操作的数据库 mysqli_select_db($db,DB_NAME); //5. 设置默认字符集 mysqli_set_charset($db,DB_CHAR);
点击 "运行实例" 按钮查看在线实例
使用预处理技术实现更新 :把id=2 黄蓉的salary 改为9999
<meta charset="UTF-8"> <?php /** */ //1.连接数据库 require 'mysqli_connect.php'; //2.准备SQL语句,将变量部分使用占位符进行代替 $sql="UPDATE IGNORE staff SET salary=? WHERE staff_id=3;"; //3.创建并初始化预处理对象stmt:将SQL语句转为对象 $stmt=mysqli_stmt_init($db); //4.用stmt对象检测预处理语句是否正确,成功返回true,错误返回false if (mysqli_stmt_prepare($stmt,$sql)){ /* 将变量与SQL语句中的占位符进行绑定 */ mysqli_stmt_bind_param($stmt,'i',$salary); $salary=9999; /* 执行SQL语句 */ mysqli_stmt_execute($stmt); echo '<br>成功的更新了'.mysqli_affected_rows($db).'条记录'; } else { echo '没有新增任何数据'; //返回SQL执行阶段的错误 exit(mysqli_stmt_errno($stmt).':'.mysqli_stmt_error($stmt)); } //* 注销stmt对象 */ mysqli_stmt_close($stmt); //12.关闭数据库连接 mysqli_close($db);
点击 "运行实例" 按钮查看在线实例
使用预处理技术实现删除 :删除id=15 小龙女
<meta charset="UTF-8"> <?php /** */ //1.连接数据库 require 'mysqli_connect.php'; //2.准备SQL语句,将变量部分使用占位符进行代替 $sql="DELETE FROM staff WHERE staff_id=?;"; //3.创建并初始化预处理对象stmt:将SQL语句转为对象 $stmt=mysqli_stmt_init($db); //4.用stmt对象检测预处理语句是否正确,成功返回true,错误返回false if (mysqli_stmt_prepare($stmt,$sql)){ /* 将变量与SQL语句中的占位符进行绑定 */ mysqli_stmt_bind_param($stmt,'i',$id); $id=15; /* 执行SQL语句 */ mysqli_stmt_execute($stmt); echo '<br>删除成功了'.mysqli_affected_rows($db).'条记录'; } else { echo '没有删除任何数据'; //返回SQL执行阶段的错误 exit(mysqli_stmt_errno($stmt).':'.mysqli_stmt_error($stmt)); } //* 注销stmt对象 */ mysqli_stmt_close($stmt); //12.关闭数据库连接 mysqli_close($db);
点击 "运行实例" 按钮查看在线实例