30:PHP与Mysql数据库的“增删改查”CRUD

CRUD是指在做计算处理时的增加(Create)、读取查询(Retrieve)、更新(Update)和删除(Delete)几个单词的首字母简写。博主就讲PHP和mysql数据库最常见的两种方式吧!pdo和mysqli;

以下讲解的是不包含预处理的,因此有一些漏洞!后面会再讲解:PDO预处理和mysqli预处理,那样就可以防止SQL注入!提高安全性!敬请关注:

php与mysql数据库的增删改查

一、PDO连接mysql的增删改查:

pdo发送sql语句有两个方法,一个是exec,别一个则是query;两者也是有区别的:

PDO::exec —  执行一条 SQL 语句,并返回受影响的行数

PDO::query  —  执行SQL语句,返回一个结果集作为一个PDOStatement对象

PDO::FETCH_ASSOC——关联数组形式;

PDO::FETCH_NUM——数字索引数组形式;

PDO::FETCH_BOTH——两种数组形式都有,这是默认的;

PDO::FETCH_OBJ——按照对象的形式,类似于以前的 mysql_fetch_object()。

  1. <?php
  2. $dsn  =  'mysql:dbname=fujieace;host=localhost' ;//数据库类型,数据库,主机名
  3. $user  =  'root' ;//用户名
  4. $password  =  'root' ; //密码
  5. $conn  = new  PDO ( $dsn ,  $user ,  $password );
  6. $conn->exec("set names utf8"); //设置字符集
  7. $catname='付杰博客';
  8. $parentid=12;
  9. //PDO插入
  10. $insert=$conn->exec("insert into cat (cat_name,parent_id) values('$catname','$parentid')");
  11. if($id=$conn->lastInsertId()){
  12.     echo $id//得到插入返回的ID
  13. }
  14. $catname='付杰';
  15. $catid=25;
  16. //PDO修改
  17. $update=$conn->exec("update cat set cat_name='$catname' where cat_id='$catid'");
  18. if($update){
  19.     echo $update;
  20. }
  21. $catid=31;
  22. //PDO删除
  23. $delete=$conn->exec("delete from cat where cat_id='$catid'");
  24. if($delete){
  25.     echo $delete;
  26. }
  27. //PDO查询多行
  28. $select=$conn->query("select cat_name,parent_id from cat where cat_id<10");
  29. $result=$select->fetchall(PDO::FETCH_ASSOC);
  30. //var_dump($result);
  31. foreach ($result as $k=>$v){
  32.     echo $v['cat_name'].'=>'.$v['parent_id'];
  33. }
  34. $catid=12;
  35. //PDO查询一行
  36. $select=$conn->query("select cat_name,parent_id from cat where cat_id='$catid'");
  37. $result=$select->fetch(PDO::FETCH_ASSOC);
  38. var_dump($result);

 

二、Mysqli连接mysql的增删改查

fetch_all() 抓取所有的结果行并且以关联数据,数值索引数组,或者两者皆有的方式返回结果集。

fetch_array() 以一个关联数组,数值索引数组,或者两者皆有的方式抓取一行结果。

fetch_object() 以对象返回结果集的当前行。

fetch_row() 以枚举数组方式返回一行结果

fetch_assoc() 以一个关联数组方式抓取一行结果。

fetch_field_direct() 以对象返回结果集中单字段的元数据。

fetch_field() 以对象返回结果集中的列信息。

fetch_fields() 以对象数组返回代表结果集中的列信息。

  1. <?php
  2. $serveraddress='localhost';  //服务器地址
  3. $user='root';  //用户名
  4. $password='root'; //密码
  5. $database='fujieace'; //数据库
  6. $mysqli  = new  mysqli ( $serveraddress ,  $user ,  $password ,  $database );
  7. if ( mysqli_connect_errno ()) {
  8.     printf ( "Connect failed: %s\n" ,  mysqli_connect_error ());
  9.     exit();
  10. }
  11. $mysqli->set_charset( "utf8" ); // 设置字符集
  12. $catname='www.fujieace.com';
  13. $parentid=12;
  14. //mysqli插入
  15. $insert=$mysqli->query("insert into cat (cat_name,parent_id) values('$catname','$parentid')");
  16. if($id=$mysqli->insert_id){
  17.     echo $id//得到插入返回的ID
  18. }
  19. $catname='付杰';
  20. $catid=55;
  21. //mysqli修改
  22. $update=$mysqli->query("update cat set cat_name='$catname' where cat_id='$catid'");
  23. if($update){
  24.     echo $update;
  25. }
  26. $catid=31;
  27. //mysqli删除
  28. $delete=$mysqli->query("delete from cat where cat_id='$catid'");
  29. if($delete){
  30.     echo $delete;
  31. }
  32. //mysqli查询多行
  33. $select=$mysqli->query("select cat_name,parent_id from cat where cat_id<10");
  34. $result=$select->fetch_all(MYSQLI_ASSOC);//参数MYSQL_ASSOC、MYSQLI_NUM、MYSQLI_BOTH规定产生数
  35. //var_dump($result);
  36. foreach ($result as $k=>$v){
  37.     echo $v['cat_name'].'=>'.$v['parent_id'];
  38. }
  39. $catid=12;
  40. //mysqli查询一行
  41. $select=$mysqli->query("select cat_name,parent_id from cat where cat_id='$catid'");
  42. $result=$select->fetch_assoc();
  43. var_dump($result);
    A+
发布日期:2017年01月05日  所属分类:PHP教程
最后修改时间:2017-01-05 23:18
评分: (当前没有评级)
付杰
SEO顾问服务 中小型网站 单站/最低99.9元 全方位优化
SEO顾问服务 中小型网站 单站/最低99.9元 全方位优化
  • ¥ 99.9元
  • 市场价:5000元
wordpress站群服务 泛解析二级域名站群 二级目录站群
wordpress站群服务 泛解析二级域名站群 二级目录站群
  • ¥ 1999.9元
  • 市场价:4800元
PHP运行环境 Wamp Lamp Lnmp 安装、配置、搭建服务
PHP运行环境 Wamp Lamp Lnmp 安装、配置、搭建服务
  • ¥ 9.9元
  • 市场价:49.9元
花牛苹果 甘肃天水 李宏恩家自种 1斤 包邮
花牛苹果 甘肃天水 李宏恩家自种 1斤 包邮
  • ¥ 6.8元
  • 市场价:8.8元

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: