zoukankan      html  css  js  c++  java
  • 数据库封装

    把下面页面封装名字为dbhelper.php 页面

     1 <?php
     2 
     3 //编写数据库操作的魔术函数
     4 function mysql_bind(){
     5 
     6     //首先我们不知道外面会传入多少个参数
     7     //可以用func_get_args()方法来获取全部传入参数,这个方法返回全部参数的数组
     8     //和func_get_args()方法相对应的其实还有一个func_num_args()来获取参数个数
     9     $args = func_get_args();
    10 
    11     //通过使用array_shift方法,使传入的第一个参数,后后面的参数分开,其实就是把sql语句,和
    12     //后面传入的值分开,使用了array_shift方法,可以返回一个字符串,这个字符串就是sql语句
    13     //后面剩下的数组就是要传入的值
    14 
    15     //sql语句
    16     $sql = array_shift($args);
    17     //重新复制给一个数组
    18     $value = $args;
    19 
    20     //替换$sql语句中的?,使用str_replace函数
    21     $sql = str_replace("?","'%s'",$sql);
    22 
    23     //把替换好的$sql语句,通过vsprintf函数,把值填入进去
    24 
    25     $sql = vsprintf($sql,$value);
    26 
    27     //截取$sql语句前面的关键字,其实就是select,insert,update,delete
    28     $begin = substr($sql,0,6);   //explode(" ",$sql)[0]; //这种写法在PHP5.4之前是不支持的
    29 
    30     $conn = mysql_connect("localhost","root","") or die(mysql_error());
    31     mysql_select_db("bbs",$conn);
    32     mysql_query("set names 'utf8'");
    33 
    34     $result = mysql_query($sql) or die(mysql_error());
    35 
    36     if(strcasecmp($begin,"insert") == 0){
    37         //如果插入成功,那么肯定有一个最新的id,所以这个id不等于0的话,证明插入成功,否则失败
    38         return mysql_insert_id();
    39     }
    40     else if(strcasecmp($begin,"update") == 0){
    41         //mysql_affected_rows()表示几行受影响,成功,肯定是大于0,否则失败
    42         return mysql_affected_rows();
    43     }
    44     else if(strcasecmp($begin,"delete") == 0){
    45         //mysql_affected_rows()表示几行受影响,成功,肯定是大于0,否则失败
    46         return mysql_affected_rows();
    47     }
    48     else{
    49         //为了将查询的内容返回回去
    50         //首先申明一个空的数组,然后,这个空的数组,每次循环,都将$row赋值给他
    51         //相当于这个数组就形成了一个二维数组
    52         $arr = array();
    53         while($row=mysql_fetch_array($result)){
    54             $arr[] = $row;
    55 //            array_push($arr,$row);
    56         }
    57         return $arr;
    58     }
    61 }
    62 
    63 ?>

     

    封装dbhelper.php调用方法,增、删、查、改 数据库里表的数据

    1 include("dbhelper.php");
    2 $r = mysql_bind("select * from users where userName=? and password=?","pangpang","qqq");
    3 
    4 //$r = mysql_bind("insert into users(id,userName,password,nickName,userImg,status)values(?,?,?,?,?,?)","","3","3","3","3","2");
    5 //$r = mysql_bind("delete from users where userName=?","1");
    6 //$r = mysql_bind("update users set nickName=? where id=?","罗大胖","1");
  • 相关阅读:
    MySql 用户 及权限操作
    MAC 重置MySQL root 密码
    在mac系统安装Apache Tomcat的详细步骤[转]
    Maven:mirror和repository 区别
    ES6 入门系列
    转场动画CALayer (Transition)
    OC 异常处理
    Foundation 框架
    Enum枚举
    Invalid App Store Icon. The App Store Icon in the asset catalog in 'xxx.app' can’t be transparent nor contain an alpha channel.
  • 原文地址:https://www.cnblogs.com/5huihui/p/3731028.html
Copyright © 2011-2022 走看看