zoukankan      html  css  js  c++  java
  • pdo一次插入多条数据的2种实现方式

    1).一个sql插入多个值,防注入处理放在获取到值的时候使用htmlspecialchars(addslashes($params ));

            try{
    
                foreach($params as $k=> $item) {
                    if($k==0){
                        $sql ="insert into tr_user(empno,username,email,create_time,update_time) VALUES('".$item['empno']."','".$item['username']."','".$item['email']."',".$item['create_time'].",".$item['update_time'].")";
                    }else{
                        $sql .=",('".$item['empno']."','".$item['username']."','".$item['email']."',".$item['create_time'].",".$item['update_time'].")";
                    }
                }
                $stmt = $this->pdo->prepare($sql);
                $res = $stmt->execute();
                if($res){
                    return true;
                }else{
                    return false;
                }
    
            }catch (Exception $e){
                var_dump($e->getMessage());
                return false;
            }
    
    

    2). 通过预处理绑定数据,防sql注入 (注释语句)

        try{
                $sql = "insert into tr_user(empno,username,email,create_time,update_time) VALUES (:empno,:username,:email,:create_time,:update_time)";
                $stmt = $this->pdo->prepare($sql);
                foreach($params as $item){
                    $stmt->bindParam(':empno',$item['empno']);
                    $stmt->bindParam(':username',$item['username']);
                    $stmt->bindParam(':email',$item['email']);
                    $stmt->bindParam(':create_time',$item['create_time']);
                    $stmt->bindParam(':update_time',$item['update_time']);
                    $res = $stmt->execute();
                }
                if($res){
                    return true;
                }else{
                    return false;
                }
    
            }catch (Exception $e){
                var_dump($e->getMessage());
                return false;
            }
    
    
  • 相关阅读:
    软工实践个人总结
    第05组 每周小结 (3/3)
    第05组 每周小结 (2/3)
    第05组 每周小结 (1/3)
    第05组 Beta冲刺 总结
    第05组 Beta冲刺 (5/5)
    第05组 Beta冲刺 (4/5)
    第六次作业
    第05组 Beta冲刺 (3/5)
    第05组 Beta冲刺 (2/5)
  • 原文地址:https://www.cnblogs.com/xinxinmifan/p/pdo_mulit_insert_learning.html
Copyright © 2011-2022 走看看