zoukankan      html  css  js  c++  java
  • dbda封装类(包括:返回二维数组、Ajax调用返回字符串、Ajax调用返回JSON)

    <?php
        class DBDA
        {
            public $host = "localhost";
            public $uid = "root";
            public $pwd = "20982239";
    
            
            //执行sql语句,返回相应的结果函数
            //$sql是要执行的sql语句
            //$type是sql语句的类型,0代表增删改,1代表查询
            //$db代表要操作的数据库
            public function Query($sql,$type=1,$db="mydb")
            {
                $conn = new MySQLi($this->host,$this->uid,$this->pwd,$db);    
                !mysqli_connect_error() or die ("连接失败!");
                $result = $conn->query($sql);
                if($type==1)
                {
                    //如果是查询语句返回结果集的二维数组
                    return $result->fetch_all();
                            
                }
                else
                {    
                    //如果是其他语句,返回true或false
                    return $result;    
                }
                
            }
                //Ajax调用返回字符串
            public function StrQuery($sql,$type=1,$db="mydb")
            {
                //造连接对象
                $conn = new MySQLi($this->host,$this->uid,$this->pwd,$db);
                
                //判断连接是否成功
                !mysqli_connect_error() or die("连接失败!");
                
                //执行SQL语句
                $result = $conn->query($sql);
                
                //判断SQL语句类型
                if($type==1)
                {
                    $attr = $result->fetch_all();
                    $str = "";
                    //如果是查询语句返回字符串
                    for($i=0;$i<count($attr);$i++)
                    {
                        for($j=0;$j<count($attr[$i]);$j++)
                        {
                            $str = $str.$attr[$i][$j];
                            $str = $str."^";
                        }
                        $str = substr($str,0,strlen($str)-1);
                        $str = $str."|";
                    }
                    $str = substr($str,0,strlen($str)-1);
                    
                    return $str;
                }
                else
                {
                    //如果是其他语句,返回true或false
                    if($result)
                    {
                        return "OK";
                    }
                    else
                    {
                        return "NO";
                    }
                }
            }
            
                //Ajax调用返回JSON
            public function JsonQuery($sql,$type=1,$db="mydb")
            {
                //定义数据源
                $dsn = "mysql:dbname={$db};host={$this->host}";
                //造pdo对象
                $pdo = new PDO($dsn,"{$this->uid}","{$this->pwd}");
        
                
                //准备执行SQL语句
                $st = $pdo->prepare($sql);
                
                //执行预处理语句
                if($st->execute())
                {
                    if($type==1)
                    {
                        $attr = $st->fetchAll(PDO::FETCH_ASSOC);//返回的关联的二维数组
                        return json_encode($attr);//json_encode将一个关联数组转化成json数据
                    }
                    else
                    {
                        if($st)
                        {
                            return "OK";
                        }
                        else
                        {
                            return "NO";
                        }
                    }
                    
                }
                else
                {
                    echo "执行失败!";
                }
            }
        }
    
    ?>
  • 相关阅读:
    Linux学习记录(四):Shell脚本
    Linux学习记录(三):Vim
    基于PyTorch构建神经网络
    Python开发【第一篇】:初识Python
    asyncio 并发编程(二)
    asyncio 并发编程(一)
    Linux 文件和目录操作命令(一)
    Django Model
    Django 之 Form 组件
    Django 模板系统
  • 原文地址:https://www.cnblogs.com/shark1100913/p/5445183.html
Copyright © 2011-2022 走看看