摘要:<?php //數(shù)據(jù)庫連接; function con(){ $dsn='mysql: host=127.0.0.1; dbname=luheng; charset=utf8; port=3306'; $dbname ='root'; $dbpw ='root'; try{ $p&
<?php //數(shù)據(jù)庫連接; function con(){ $dsn='mysql: host=127.0.0.1; dbname=luheng; charset=utf8; port=3306'; $dbname ='root'; $dbpw ='root'; try{ $p = new PDO($dsn,$dbname,$dbpw); }catch(PDOException $e){ print_r($e->getMessige()); exit; } return $p; } //普通的查詢; function select(){ //連接數(shù)據(jù)庫; $c=con(); //編寫sql語句; $sql='select * from demo'; //預(yù)處理sql語句; $a = $c->prepare($sql); //執(zhí)行sql語句; $a->execute(); //改變類型; $a->setFetchMode(PDO::FETCH_ASSOC); //結(jié)果集; $ret = $a->fetchAll(); //返回結(jié)果集; return $ret; } // $b=select(); // print_r($b); function select($table,$field='*',$where=''){ //首先連接數(shù)據(jù)庫; $c=con(); $sql = 'SELECT '; // 判斷字段不為空; if(!empty($field)){ $sql .= rtrim($field); } $sql .= ' FROM '; $sql .= $table; //判斷條件不為空; if (!empty($where)) { $sql .= ' where '; $sql .= $where; } //預(yù)處理sql語句; $a = $c->prepare($sql); //判斷是否執(zhí)行成功; if ($a->execute()) { //在判斷是否有返回的結(jié)果,返回記錄條數(shù); if ($a->rowCount()) { //去重,去掉帶索引的數(shù)組; $a->setFetchMode(PDO::FETCH_ASSOC); $ret = $a->fetchAll(); return $ret; } else{ return false; } }else { return false; } } //條件不傳值就是默認為所有;表名必須傳; $b = select('demo'); print_r($b); //組基本的添加,不用;正常添加 function add(){ //連接數(shù)據(jù)庫; $c=con(); //聲明sql語句; 一定要用雙引號; $sql="insert into demo (name,age,sex) VALUES ('王五',12,1)"; print_r($sql);die; //進行預(yù)處理; $a=$c->prepare($sql); //執(zhí)行; //判斷執(zhí)行是否成功; $a->execute(); //判斷是否有返回的結(jié)果集; //改變類型; $a->setFetchMode(PDO::FETCH_ASSOC); //進行結(jié)果輸出; $ret = $a->fetchAll(); return $ret; } // $b = add(); // print_r($b); //添加成功; // insert into demo set ('name'=>'張三') 添加; function insert($table,$data=[]){ $pdo = con(); //創(chuàng)建SQL語句 $sql = "INSERT INTO {$table} SET "; // print_r($data);exit();有返回的值; //組裝插入語句 if(is_array($data)){ foreach ($data as $k=>$v) { $sql .= $k.'="'.$v.'", '; //拼裝為 $k ='$v', } }else{ echo "不是數(shù)組;"; return false; } // print_r($data);exit(); //去掉尾部逗號,并添加分號結(jié)束 $sql = rtrim(trim($sql),',').';'; // print_r($sql);die; //創(chuàng)建PDO預(yù)處理對象 $stmt = $pdo->prepare($sql); //執(zhí)行新增操作 if($stmt->execute()){ if($stmt->rowCount()){ echo "添加成功"; return true; } } else { echo '添加失敗;'; return false; } } // 用中括號就代表是數(shù)組,用小括號就需要加array申明一下這是數(shù)組; // $b=insert('demo',['name'=>'魯先生','age'=>18,'age'=>0]); // $b=insert('demo',array('name'=>'魯先生','age'=>18,'age'=>0)); // print_r($b); //正常添加; //insert into demo() values(); function add($table,$field,$values){ $pdo = con(); //開始拼接sql語句; $sql = "INSERT INTO {$table}"; $sql .='(' .$field. ')' ; // print_r($sql);die; $str = ''; foreach ($values as $v) { $str .= '"'.$v.'",'; } //去掉尾部逗號 $s = rtrim($str,','); $sql .= ' values ('.$s.')'.';'; //創(chuàng)建PDO預(yù)處理對象 $stmt = $pdo->prepare($sql); //執(zhí)行新增操作 if($stmt->execute()){ if($stmt->rowCount()){ echo "添加數(shù)據(jù)成功"; return true; } } else { echo '添加數(shù)據(jù)失敗;'; return false; } } // $b=add('demo','name,age,sex',['張三',12,0]); // print_r($b); //修改正常; // update demo name='lisi' where id=$id; function update($table,$data=[],$where=''){ //連接數(shù)據(jù)庫 $c=con(); $sql = "update {$table} set "; if(is_array($data)){ foreach ($data as $k=>$v) { $sql .= $k.'="'.$v.'", '; } } $sql = rtrim(trim($sql),','); // print_r($sql);die(); //查詢條件 if(!empty($where)){ $sql .= ' WHERE '.$where; } $stmt = $c->prepare($sql); //執(zhí)行新增操作 if($stmt->execute()){ if($stmt->rowCount()){ echo "修改數(shù)據(jù)成功"; return true; } } else { echo '修改數(shù)據(jù)失敗;'; return false; } } // $b=update('demo',['name'=>'魯先生'],'id=3'); // print_r($b); //刪除成功; // delete from demo where id=$id function delete($table,$where=''){ $c=con(); $sql = "delete from {$table} " ; if (!empty($where)) { $sql .= 'where ' .$where; } // print_r($sql);die; $stmt = $c->prepare($sql); // //執(zhí)行新增操作 if($stmt->execute()){ if($stmt->rowCount()){ echo "ok"; return true; } } else { echo 'no'; return false; } } // $b=delete('demo','id=40'); // print_r($b);
批改老師:西門大官人批改時間:2019-04-20 13:29:25
老師總結(jié):代碼最好自己寫,不建議拷貝課件源碼,沒有意義