用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - php代码库

php mysql数据库操作类

2014-11-01 作者: php源代码大全举报

[php]代码库

<?php
class MySQL{
    private $host;                          //服务器地址
    private $name;                          //登录账号
    private $pwd;                           //登录密码
    private $dBase;                         //数据库名称
    private $conn;                          //数据库链接资源
    private $result;                        //结果集
    private $msg;                           //返回结果
    private $fields;                        //返回字段
    private $fieldsNum;                     //返回字段数
    private $rowsNum;                       //返回结果数
    private $rowsRst;                       //返回单条记录的字段数组
    private $filesArray = array();          //返回字段数组
    private $rowsArray = array();           //返回结果数组
    private $charset='utf8';                //设置操作的字符集
    private $query_count=0;                 //查询结果次数
    static private $_instance;              //存储对象
    //初始化类
    private function __construct($host='',$name='',$pwd='',$dBase=''){
        if($host  !=  ''$this->host  = $host;
        if($name  !=  ''$this->name  = $name;
        if($pwd   !=  ''$this->pwd   = $pwd;
        if($dBase !=  ''$this->dBase = $dBase;
        $this->init_conn();
    }
    //防止被克隆
    private function __clone(){}
    public static function getInstance($host='',$name='',$pwd='',$dBase=''){
        if(FALSE == (self::$_instance instanceof self)){
            self::$_instance = new self($host,$name,$pwd,$dBase);
        }
        return self::$_instance;
    }
    public function __set($name,$value){
        $this->$name=$value;
    }
    public function __get($name){
        return $this->$name;
    }
    //链接数据库
    function init_conn(){
        $this->conn=@mysql_connect($this->host,$this->name,$this->pwd) or die('connect db fail !');
        @mysql_select_db($this->dBase,$this->conn) or die('select db fail !');
        mysql_query("set names ".$this->charset);
    }
    //查询结果
    function mysql_query_rst($sql){
        if($this->conn == '') $this->init_conn();
        $this->result = @mysql_query($sql,$this->conn);
        $this->query_count++;
    }
    //取得字段数
    function getFieldsNum($sql){
        $this->mysql_query_rst($sql);
        $this->fieldsNum = @mysql_num_fields($this->result);
    }
    //取得查询结果数
    function getRowsNum($sql){
        $this->mysql_query_rst($sql);
        if(mysql_errno() == 0){
            return @mysql_num_rows($this->result);
        }else{
            return '';
        }  
    }
    //取得记录数组(单条记录)
    function getRowsRst($sql,$type=MYSQL_BOTH){
        $this->mysql_query_rst($sql);
        if(empty($this->result)) return '';
        if(mysql_error() == 0){
            $this->rowsRst = mysql_fetch_array($this->result,$type);
            return $this->rowsRst;
        }else{
            return '';
        }
    }
    //取得记录数组(多条记录)
    function getRowsArray($sql,$type=MYSQL_BOTH){
        !empty($this->rowsArray) ? $this->rowsArray=array() : '';
        $this->mysql_query_rst($sql);
        if(mysql_errno() == 0){
            while($row = mysql_fetch_array($this->result,$type)) {
                $this->rowsArray[] = $row;
            }
            return $this->rowsArray;
        }else{
            return '';
        }
    }
    //更新、删除、添加记录数
    function uidRst($sql){
        if($this->conn == ''){
            $this->init_conn();
        }
        @mysql_query($sql);
        $this->rowsNum = @mysql_affected_rows();
        if(mysql_errno() == 0){
            return $this->rowsNum;
        }else{
            return '';
        }
    }
    //返回最近插入的一条数据库的id值
    function returnRstId($sql){
        if($this->conn == ''){
            $this->init_conn();
        }
        @mysql_query($sql);
        if(mysql_errno() == 0){
            return mysql_insert_id();
        }else{
            return '';
        }
    }
    //获取对应的字段值
    function getFields($sql,$fields){
        $this->mysql_query_rst($sql);
        if(mysql_errno() == 0){
            if(mysql_num_rows($this->result) > 0){
                $tmpfld = @mysql_fetch_row($this->result);
                $this->fields = $tmpfld[$fields];
                 
            }
            return $this->fields;
        }else{
            return '';
        }
    }
    //错误信息
    function msg_error(){
        if(mysql_errno() != 0) {
            $this->msg = mysql_error();
        }
        return $this->msg;
    }
    //释放结果集
    function close_rst(){
        mysql_free_result($this->result);
        $this->msg = '';
        $this->fieldsNum = 0;
        $this->rowsNum = 0;
        $this->filesArray = '';
        $this->rowsArray = '';
    }
    //关闭数据库
    function close_conn(){
        $this->close_rst();
        mysql_close($this->conn);
        $this->conn = '';
    }
    //取得数据库版本
    function db_version() {
        return mysql_get_server_info();
    }
}


网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...