php 数据库操作模块,简单方便易懂,MYSQLI数据库连接

更新时间:2020年05月08日 10:05:39
人气:168
分类: PHP

php 数据库操作模块,简单方便易懂 ,PHP 添加,修改,查询,删除综合模块,MYSQL数据库连接

<?php 
$db['host']="localhost";
//数据库主机
$db['user']="root";
//数据库用户名
$db['password']="root";
//数据库密码
$db['database']="ku";
//数据库名
$db['pre']="biao";
//数据库表
date_default_timezone_set("PRC");
////设置中国时区...date('Y-m-d H:i:s')."<br>";//中国标准时间
global $db;
//全局变量
$link = mysqli_connect(   
                  $db['host'], 
                       $db['user'],
                   $db['password'], 
                    $db['database']);
if (!$link) {
    printf("无法连接数据库. 错误信息为: %s ", mysqli_connect_error());
    exit;
} else {
    mysqli_set_charset ($link,'utf8');
    //防止中文乱码
}
/*数据库操作模块*/
/*$action:操作方法*/
/*$table:表名*/
/*$values:数据*/
/*$if:条件*/
function sql($action,$table,$values,$if) {
    global $link;
    $rows="";
    /*查询数据*/
    if($action=="s") {
        $sql_str="SELECT ".$values." FROM ".$table." ".$if;
    }
    /*查询数据影响行数*/
    if($action=="frow") {
        $sql_str="SELECT ".$values." FROM ".$table." ".$if;
    }
    /*删除数据*/ elseif($action=="d") {
        $sql_str="DELETE FROM ".$table." ".$if;
    }
    /*增加数据*/ elseif($action=="i") {
        $kv=get_key_value($values);
        $keys=$kv[0];
        $values=$kv[1];
        $sql_str="INSERT INTO ".$table." (".$keys.") VALUES (".$values.")";
    }
    /*增加数据返回id*/ elseif($action=="addid") {
        $kv=get_key_value($values);
        $keys=$kv[0];
        $values=$kv[1];
        $sql_str="INSERT INTO ".$table." (".$keys.") VALUES (".$values.")";
    }
    /*修改数据*/ elseif($action=="u") {
        $set_str=array();
        $kv=get_key_value($values);
        $keys=explode(",",$kv[0]);
        //$values=explode(",",$kv[1]);
        foreach ($keys as $key) {
            if(stristr($values[$key],"///")) {
                //通过"///"规定提交结果为运算式,不加引号;
                $set_str[]=$key."=".str_replace("///","",$values[$key]);
            } else {
                $set_str[]=$key."='".$values[$key]."'";
            }
        }
        $set_str=implode(",",$set_str);
        $sql_str="UPDATE ".$table." SET ".$set_str." ".$if;
    }
    //echo $sql_str."\n";
    $result = mysqli_query($link, $sql_str);
    if($result=='0') {
        echo mysqli_error($link);
    }
    if ($action=="addid") {
        $result=mysqli_insert_id($link);
    } elseif ($action=='frow') {
        $result=mysqli_num_rows($result);
    }
    //$action=="s"&&$result?mysqli_free_result($result):null;//释放查询结果内存
    //mysqli_close($link); //关闭数据库连接
    /*输出结果 成功:非Select语句为True,Select直接返回结果;失败:返回False*/
    if($action=="s"&&$result) {
        $num_results = mysqli_num_rows($result);
        //返回行数
        while($row = mysqli_fetch_assoc($result)) {
            /*如果只有一行,直接返回一维数组
                if($num_results==1)
                return $row;
                如果有多行,累加进二维数组,并返回
                else*/
            $rows[]=$row;
        }
        $action=="s"&&$result?mysqli_free_result($result):null;
        return $rows;
    } else {
        return $result;
    }
}
/*Post信息键名和键值分开存储*/
function get_key_value($post) {
    $keys=array();
    $values=array();
    foreach($post as $k=>$v) {
        $keys[]=$k;
        $values[]="'".$v."'";
    }
    $keys=implode(",",$keys);
    $values=implode(",",$values);
    return array($keys,$values);
}
function firstrow($res) {
    if($res) {
        foreach ($res as $info) {
            return $info;
            exit();
        }
    }
}
function gv($bian,$nei) {
    if(isset($bian[$nei])) {
        return $bian[$nei];
    } else {
        return '';
    }
}

调用方法 :

$res=sql("s","user","*","where user='".$_POST['user']."' or tel='".$_POST['tel']."' ");
if ($res) {
    echo "<script>alert('用户名或电话已被使用,请重新注册');history.back();</script>";
} else {
    $res=sql("s","user","*","where user='".$_POST['superior']."'");
    S为查询数据
    $info=firstrow($res);
    $data=array(
                'qq'=>$_POST['qq'],
                'tel'=>$_POST['tel'],
                'user'=>$_POST['user'],
                'email'=>$_POST['email'],
                'superior'=>$_POST['superior'],
                'pwd'=>md5($_POST['pwd']),
                'zhifubao'=>$_POST['zhifubao'],
                'xingming'=>$_POST['xingming'],
                'sup_qq'=>gv($info,"qq"),
                'time'=>date('Y-m-d H:i:s')
    );
    $res=sql("i","user",$data,"");
    $data=array("next_num"=>gv($info,"next_num")+1);
    //gv($info,"next_num")也就是相当于$info["next_num"]
    $res=sql("u","user",$data,"where user='".$_POST['superior']."'");
    echo "<script>alert('注册成功,请登录!'); window.location.href='/index.php';</script>";
    }


【版权声明】

本文仅代表作者观点,不代表本站立场。本文系作者授权发表,未经许可,不得转载。

相关文章
# 在线留言