Blogger Information
Blog 15
fans 0
comment 1
visits 10968
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
pdo预处理的增删改查--4.26日作业
吴明的博客
Original
1058 people have browsed it
  1. 增加记录条数

    sql拼接语句时一定要注意空格,语句的规范性检查,array_keys/rtrim/prepare/bindValue/execute/rowCount  这些函数的使用

  2. 更新记录

        更新的条件不能为空,其余和新增插入类似

    3、记录查询,分为查询单条和多条,sql 语句写法有些差异,PDO执行时 单条记录和多条记录查询韩数分别是

$stmt ->setFetchModel(PDO::FETCH_ASSOC);返回值为:$stmt->fetch

    4删除的执行操作也是条件不能为空。

<?php

//连接数据库

$dsn = "mysql:host=localhost;dbname=php;charset=utf8;port=3306";

$userName = "root";

$password = "";

try{

  $pdo = new PDO($dsn,$userName,$password);

}catch(PDOException $e){

print'connect_error:'.$e->getMessage();

//exit();

}

//新增数据

 if(!function_exists('insert')){

  function insert($pdo,$table,$data=[]){

  //创建sql语句

  $sql = "INSERT IGNORE {$table} SET ";

  foreach( array_keys($data) as $field){

  $sql .= $field .'=:'.$field.',';

  }

  //去掉尾部逗号,并添加分号结束

  $sql = rtrim(trim($sql),',').';';

  //创建pdo预处理对象

  $stmt = $pdo->prepare($sql);

  //绑定参数到预处理对象

  foreach($data as $field=>$value){

  $stmt ->bindValue(":$field",$value);

  }

  //执行新操作

  if($stmt->execute()){

  if($stmt->rowCount()>0){

  return true;

  }

  }else{

  return false;

  }

 

  }

 }

 //更新数据

 if(!function_exists('uptate')){

  function uptate($pdo,$table,$data=[],$where="")

  //创建sql语句

  {$sql = "UPTATE {$table} SET ";

  foreach(array_keys($data) as $field){

  $sql .=$field.':'.$field","

  }

  //去掉结尾的逗号

  $sql= rtrim(trim($sql),',');

  //添加更新条件

  if(!empty($where)) {

            $sql .= ' WHERE '. $where;

        }else{

            exit('条件不能为空');

        }

        //创建参数到预处理对象

         $stmt = $pdo->prepare($sql);

         foreach($data as $field=>$value){

          $stmt->bindValue(":{$field}".$value);

         }

         if($stmt->execute())

         {

          if($stmt->rowCount()>0)

          {

          return true

          }

         }else{

          return false;

         }

    }

 }

 //查询单条记录

 if(!function_exists('find')){

  function find($pdo,$table,$fields,$where='')

  {

  $sql = 'SELECT';

  if(is_array($fields)){

  foreach($fields as $field){

  $sql .= $fields.','

  }

  }else{

  $sql .= $fields;

  }

  $sql = rtrim(trim($sql),',');

  $sql .= 'FROM'.$table;

  //添加查询条件

  if(!empty($where))

  {

  $sql .= ' WHERE'.$where;

  }

  $sql .= ' LIMIT 1';

  //sql语句拼装

  $sql = rtrim(trim(),',');

  $stmt =  $pdo ->prepare();

  //执行查询操作

  if($stmt ->execute()

  {

  if($stmt-rowCount()>0)

  {

  //return true;

  $stmt ->setFetchMode({PDO ::FETCH_ASSOC )

  {

  return $stmtAll();

 

  }

  }else{

  return false;

  }

  }

 }



 //多条记录查询

 if (!function_exists('select')) {


    function select($pdo,$table,$fields, $where='', $order='') {

        //创建SQL语句

        $sql = 'SELECT ';

        if (is_array($fields)) {

            foreach ($fields as $field) {

                $sql .= $field.', ';

            }

        } else {

            $sql .= $fields;

        }


        $sql = rtrim(trim($sql),',');

        $sql .= '  FROM '.$table;

        //添加查询条件

        if(!empty($where)) {

            $sql .= '  WHERE '. $where;

        }


        //添加排序条件

        if(!empty($order)) {

            $sql .= ' order by '.$order;

        }


        //去掉尾部逗号,并添加分号结束

        $sql = rtrim(trim($sql),',').';';


        //创建PDO预处理对象

        $stmt = $pdo->prepare($sql);


        //执行查询操作

        if($stmt->execute()){

            if($stmt->rowCount()>0){

                $stmt->setFetchMode(PDO::FETCH_ASSOC);

                //返回一个二维数组

                return $stmt->fetchAll();

            }

        } else {

            return false;

        }

    }

}


//删除数据

if (!function_exists('delete')) {

   

    function delete($pdo,$table, $where='') {

        //创建SQL语句

        $sql = "DELETE FROM {$table}  ";

        //添加删除条件

        if(!empty($where)) {

            $sql .= 'WHERE '. $where;

        }else{

            exit('条件不能为空');

        }

        //去掉尾部逗号,并添加分号结束

        $sql = rtrim(trim($sql),',').';';


        //创建PDO预处理对象

        $stmt = $pdo->prepare($sql);


        //执行删除操作

        if($stmt->execute()){

            if($stmt->rowCount()>0){

                return true;

            }

        } else {

            return false;

        }

    }

}


Correction status:Uncorrected

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