博客列表 >1122作业pdo操作-PHP培训第九期线上班

1122作业pdo操作-PHP培训第九期线上班

淡月
淡月原创
2019年11月22日 22:50:11493浏览

1.连接mysql

  1. <?php
  2. //数据库连接参数
  3. $db = [
  4. 'type' => 'mysql',
  5. 'host' => '127.0.0.1',
  6. 'dbname' => 'SqlTest',
  7. 'username' => 'root',
  8. 'password' => 'root',
  9. 'port' => 3306,
  10. 'charset' => 'utf8'
  11. ];
  12. $dsn = "{$db['type']}:host={$db['host']};dbname={$db['dbname']};charset={$db['charset']}";
  13. //连接数据库
  14. try{
  15. $pdo = new PDO($dsn, $db['username'], $db['password']);
  16. }
  17. catch(PDOException $e){
  18. die('Connection Failed: ' . $e->getMessage() );
  19. }
  20. ?>

2.增insert

  1. <?php
  2. //(1) 连接数据库
  3. require '/mysql.php';
  4. //(2) 创建SQL语句模板,相当于占位
  5. $sql = 'INSERT INTO `zsgc` SET `user_name`=:name, `desc`=:desc, `hobby`=:hobby, `create_time`=:ct';
  6. //(3) 创建SQL语句对象
  7. $stmt = $pdo->prepare( $sql );
  8. //(4) 将变量绑定到SQL语句模板的命名占位符上
  9. $name = 'Andrew';
  10. $desc = '他很优秀';
  11. $hobby = '跳伞';
  12. $ct = time();
  13. $stmt->bindParam('name',$name,PDO::PARAM_STR);
  14. $stmt -> bindParam('desc',$desc,PDO::PARAM_STR);
  15. $stmt -> bindParam('hobby',$hobby,PDO::PARAM_STR);
  16. $stmt -> bindParam('ct',$ct,PDO::PARAM_INT);
  17. //(5) 执行SQL操作
  18. $add = $stmt->execute();
  19. if( $add ){
  20. $count = $stmt->rowCount();
  21. if( $count>0 ){
  22. echo '插入成功';
  23. }
  24. else{
  25. echo '插入失败';
  26. }
  27. }
  28. else{
  29. die( print_r( $stmt->errorInfo(),true) );
  30. }
  31. //(6) 销毁pdo, 关闭连接
  32. $pdo = null; // unset($pdo) 等价
  33. ?>

3.改update

  1. <?php
  2. //(1) 连接数据库
  3. require '/mysql.php';
  4. //(2) 创建SQL语句模板,相当于占位
  5. $sql = 'UPDATE `zsgc` SET `email`=:email, `update_time`=:ut WHERE `id`=:id';
  6. //(3) 创建SQL语句对象
  7. $stmt = $pdo->prepare( $sql );
  8. //(4) 将变量绑定到SQL语句模板的命名占位符上
  9. $eamil = '123456@qq.com';
  10. $ut = time();
  11. $id = 3;
  12. $stmt->bindParam('email', $eamil, PDO::PARAM_STR);
  13. $stmt->bindParam('ut', $ut, PDO::PARAM_INT);
  14. $stmt->bindParam('id', $id, PDO::PARAM_INT);
  15. //(5) 执行SQL操作
  16. $update = $stmt->execute();
  17. if( $update ){
  18. $count = $stmt->rowCount();
  19. if( $count ){
  20. echo '修改成功';
  21. }
  22. else{
  23. echo '修改失败';
  24. }
  25. }
  26. else{
  27. die( print_r( $stmt->errorInfo(),true ) );
  28. }
  29. //(6) 销毁pdo, 关闭连接
  30. $pdo = null; // unset($pdo) 等价

4.查select

  1. <?php
  2. //(1) 连接数据库
  3. require '/mysql.php';
  4. //(2) 创建SQL语句模板,相当于占位
  5. $sql = 'SELECT * FROM `zsgc`';
  6. //(3) 创建SQL语句对象
  7. $stmt = $pdo->prepare( $sql );
  8. //(4) 将变量绑定到SQL语句模板的命名占位符上
  9. $ssq->bindParam('id',$id,PDO::PARAM_INT);
  10. //(5) 执行SQL操作
  11. $select = $stmt->execute();
  12. if( $select ){
  13. #为什么多索引下标,是pdo这个类操作出来的,fetch读取一行,fetchall读取所有行
  14. #对于fetch( N )里的N,1去掉索引数组,加了一个queryString;2去掉索引数组;3只剩索引数组;4全部都有
  15. // $arr = $stmt->fetch(2);
  16. // print_r($arr);
  17. $arrs = $stmt->fetchAll();
  18. if( $arrs ){
  19. foreach( $arrs as $val ){
  20. echo '姓名:' . $val['user_name'] .'<br>';
  21. echo '性别:' ;
  22. if( !$val['sex'] ){
  23. echo '女<br>';
  24. }
  25. else{
  26. echo '男<br>';
  27. }
  28. echo '描述:' . $val['desc'] .'<br>';
  29. echo '爱好:' . $val['hobby'] .'<br>';
  30. echo '<hr>';
  31. }
  32. }
  33. else{
  34. echo '没有数据';
  35. }
  36. }
  37. else{
  38. die( print_r($stmt->errorInfo(),true) );
  39. }
  40. //(6) 销毁pdo, 关闭连接
  41. $pdo = null; //unset($pdo);

5.删delete

  1. <?php
  2. // 连接数据库
  3. require '/mysql.php';
  4. //(2) 创建SQL语句模板,相当于占位
  5. $sql = 'DELETE FROM `zsgc` WHERE `id`=:id';
  6. //(3) 创建SQL语句对象
  7. $stmt = $pdo->prepare( $sql );
  8. //(4) 将变量绑定到SQL语句模板的命名占位符上
  9. $id = 8;
  10. $stmt->bindParam('id', $id, PDO::PARAM_INT);
  11. //(5) 执行SQL操作
  12. $delete = $stmt->execute();
  13. if( $delete ){
  14. if ($stmt->rowCount() > 0) {
  15. echo '删除成功';
  16. }
  17. else{
  18. echo '删除失败';
  19. }
  20. }
  21. else{
  22. die( print_r( $stmt->errorInfo(),true ) );
  23. }
  24. //(6) 销毁pdo, 关闭连接
  25. $pdo = null; // unset($pdo) 等价

6.手抄作业





声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议