配置DSN数据源连接参数
连接数据库
增,删,改,查
1.连接数据库
2.设置SQL语句
3.创建预处理对象
4.绑定参数
5.执行SQL操作
6.关闭连接
注意:如果是查询操作,需要在第五步(执行SQL操作)后面遍历查询到的数据
注意:更新和删除,必须要有条件
实例(database.php)
<?php //配置数据库连接参数 return [ 'type' => 'mysql', 'host' => '127.0.0.1', 'dbname' => 'php', 'username' => 'root', 'password' => 'root' ];
运行实例 »
点击 "运行实例" 按钮查看在线实例
实例(connect.php)
<?php //加载配置参数 $db = require 'database.php'; //设置数据源 $dsn = "{$db['type']}:host={$db['host']};dbname={$db['dbname']}"; //连接数据库 try{ $pdo = new PDO($dsn,$db['username'],$db['password']); }catch (PDOException $e){ die('Connect Failed:'.$e->getMessage()); }
运行实例 »
点击 "运行实例" 按钮查看在线实例
实例(增)
<?php //1.连接数据库 require __DIR__ . '/inc/connect.php'; //2.创建sql语句模板 $sql = 'INSERT INTO `category` SET `name` = :name, `alias` = :alias'; //3.创建sql语句对象 $stmt = $pdo -> prepare($sql); //4.绑定变量到sql语句中 $name = 'zn'; $alias = '宅男福利'; $stmt -> bindParam('name',$name,PDO::PARAM_STR); $stmt -> bindParam('alias',$alias,PDO::PARAM_STR); //5.执行sql操作 if($stmt -> execute()){ if($stmt -> rowCount() > 0){ echo '成功添加' . $stmt -> rowCount() . '条记录,该记录主键为:' . $pdo->lastInsertId(); } }else{ die('<pre>' . print_r($stmt -> errorInfo(),true)); } //6.关闭连接 $pdo = null;
运行实例 »
点击 "运行实例" 按钮查看在线实例
实例(删)
<?php //1.连接数据库 require __DIR__ . '/inc/connect.php'; //2.创建sql语句 $sql = 'DELETE FROM `category` WHERE `cate_id` = :cate_id'; //3.创建预处理对象 $stmt = $pdo -> prepare($sql); //4.绑定参数 $cate_id = 7; $stmt->bindParam('cate_id',$cate_id,PDO::PARAM_INT); //5.执行sql操作 if($stmt->execute()){ if($stmt->rowCount() > 0){ echo "成功删除:" . $stmt->rowCount() . '记录'; } }else{ die('<pre>' . print_r($stmt->errorInfo(),true)); } //6.关闭连接 $pdo = null;
运行实例 »
点击 "运行实例" 按钮查看在线实例
实例(改)
<?php //1.连接数据库 require __DIR__ . '/inc/connect.php'; //2.创建sql语句 $sql = 'UPDATE `category` SET `name` = :name ,`alias` = :alias WHERE `cate_id` =:cate_id'; //3.创建与处理对象 $stmt = $pdo -> prepare($sql); //4.绑定参数 $name = 'xd'; $alias = '是兄弟就来打我'; $cate_id = 8; $stmt->bindParam('name',$name,PDO::PARAM_STR); $stmt->bindParam('alias',$alias,PDO::PARAM_STR); $stmt->bindParam('cate_id',$cate_id,PDO::PARAM_INT); //5.执行sql操作 if($stmt->execute()){ if($stmt->rowCount() > 0){ echo "成功更新了:" . $stmt->rowCount() . '记录'; } }else{ die('<pre>' . print_r($stmt->errorInfo(),true)); } //6.关闭连接 $pdo = null;
运行实例 »
点击 "运行实例" 按钮查看在线实例
实例(查)
<?php //1.连接数据库 require __DIR__ . '/inc/connect.php'; //2.创建sql语句 $sql = 'SELECT * FROM `movies` WHERE `cate_id` = :cate_id'; //3.创建预处理对象 $stmt = $pdo -> prepare($sql); //4.绑定参数 $cate_id = 2; $stmt->bindParam('cate_id',$cate_id,PDO::PARAM_INT); //5.执行操作 $stmt->execute(); //6.遍历 //bindColumn():将结果集中的记录字段,绑定到指定的变量中 $stmt -> bindColumn('name',$name); $stmt -> bindColumn('detail',$detail); while($stmt -> fetch(PDO::FETCH_ASSOC)){ $detail = mb_substr($detail,0,20,'utf-8'); echo '片名:' . $name . '<br>' . '简介:' . $detail . '...<hr>'; } //7.关闭连接 $pdo = null;
运行实例 »
点击 "运行实例" 按钮查看在线实例