读书人

PHP数据库工具种class.mysql.php

发布时间: 2012-12-22 12:05:06 作者: rapoo

PHP数据库工具类class.mysql.php

?

开发PHP系统过程中,对数据库(mysql)的访问操作绝对免不了。

今天来介绍一个简单的数据库工具类class.mysql.php。

?

首先我们要有一个配置文件,用来存放连接数据库的各种信息和一些基本信息。

于是有了config.inc.php

?

// 定义数据库服务器define('DB_SERVER', "localhost");// 定义数据库登录名define('DB_USER', "root");// 定义数据库登录密码define('DB_PWD', null);// 定义数据库名称define('DB_DATABASE', "username_mydata");/*为了更高效的开发,推荐以下做法1. 定义表的前缀2. 用全局变量定义数据库表名*/define('TABLE_PRE', "stuot_");define('TABLE_USERS', "users");define('TABLE_NEWS', "news");

注:用全局变量定义数据库表名可以方便系统的维护,因为一旦需要修改表名,只需要修改定义的内容就全局可以应用了。

?

接下来,我们来使用轻盈快捷的数据库工具类class.mysql.php

首先在php文件头,我们需要初始化数据库

?

require("config.inc.php");require("mysql.class.php"); // 这里定义文件名,看自己习惯吧$db = new Database(DB_SERVER, DB_USER, DB_PWD, DB_DATABASE);

?

接下来介绍一下Mysql类

?

1. 变量

?

var $server   = ""; //数据库服务器var $user     = ""; //数据库登录用户名var $pass     = ""; //数据库登录用户密码var $database = ""; //数据库名称var $pre      = ""; //表前缀var $error = ""; //错误信息var $errno = 0; //错误代码//SQL查询后影响的行数var $affected_rows = 0;var $link_id = 0;var $query_id = 0;

?

?

2. 构造函数(php当中还是用“函数”比“方法”好)

?

function Mysql($server, $user, $pass, $database, $pre=''){$this->server=$server;$this->user=$user;$this->pass=$pass;$this->database=$database;$this->pre=$pre;}

?

?

3. 连接数据库函数connect($new_link=false)

当以connect(true)调用的时候,将强制要求建立一个新的link,哪怕是之前已经以同样的参数调用了mysql_connect()。

?

function connect($new_link=false) {$this->link_id=@mysql_connect($this->server,$this->user,$this->pass,$new_link);if (!$this->link_id) {//建立连接失败$this->oops("Could not connect to server: <b>$this->server</b>.");}if(!@mysql_select_db($this->database, $this->link_id)) {//连接数据库失败$this->oops("Could not open database: <b>$this->database</b>.");}// 回收变量$this->server='';$this->user='';$this->pass='';$this->database='';}

洋人写东西就是好玩,oops函数是显示错误信息函数,将在下面介绍。

?

4. 获取所有结果

# Desc: 返回所有结果# param: SQL SELECT语句# returns: assoc array of ALL fetched resultsfunction fetch_all_array($sql) {$query_id = $this->query($sql);$out = array();while ($row = $this->fetch_array($query_id)){$out[] = $row;}$this->free_result($query_id);return $out;}

?

PHP开发当中结果的分页显示免不了,这个工具类在这方面有待改进。

?

& PHP OOP?? SCREW U!!

读书人网 >其他数据库

热点推荐