简单的MySQLDB类,简单MySQLDB类

php
2 header('Content-Type:text/html; charset=utf-8');
3 error_reporting(E_ALL ^ E_DEPRECATED);
4 //数据库操作类
5 class MySQLDB{
6
7 //属性--必要的信息
8 private $_host; //主机
9 private $_port; //端口
10 private $_user; //用户名
11 private $_pass; //密码
12 private $_charset;//字符集
13 private $_dbname; //默认数据库
14
15 //属性--运行时生成
16 public $_link; //mysql link 资源
17
18 private static $_instance;
19 public static function getInstance($params=array()){
20 if(!self::$_instance instanceof self){
21 self::$_instance = new self($params);
22 }
23 return self::$_instance;
24 }
25 private function __clone(){}
26
27 /*
28 * 构造方法
29 * @param $param=array() array 关联数组 需要六个属性值
30 */
31 private function __construct($params=array()){
32 //初始化属性
33 $this->_initParams($params);
34 //连接数据库服务器
35 $this->_connect();
36 //设定字符集
37 $this->_setCharset();
38 //选择默认数据
39 $this->_selectDB();
40 }
41
42 /*
43 * 初始化数据库服务器参数
44 */
45 private function _initParams($params){
46 $this->_host = isset($params['host'])?$params['host']:'127.0.0.1'; //本机
47 $this->_port = isset($params['port'])?$params['port']:'3306'; //3306
48 $this->_user = isset($params['user'])?$params['user']:''; //匿名用户
49 $this->_pass = isset($params['pass'])?$params['pass']:''; //没有密码
50 $this->_charset = isset($params['charset'])?$params['charset']:'utf8'; //utf8
51 $this->_dbname = isset($params['dbname'])?$params['dbname']:''; //表示不用选择默认数据库
52 }
53
54
55 /*
56 * 连接数据库服务器
57 */
58 private function _connect(){
59 //127.0.0.1:3306
60 if($link = mysql_connect("$this->_host:$this->_port",$this->_user,$this->_pass)){
61 //成功
62 $this->_link = $link;
63 }else{
64 //失败,强制脚本结束,提示错误信息
65 die("-_-!,连接数据库服务器失败,请确定连接选项");
66 }
67 }
68
69 /*
70 * 设定指定字符集
71 */
72 private function _setCharset(){
73 $sql = "set names $this->_charset";
74 if(mysql_query($sql,$this->_link)){
75 //成功
76 }else{
77 //执行失败给出错误信息
78 echo '-_-!SQL执行失败
';
79 echo '错误的SQL为:',$sql,'
';
80 echo '错误代码为:',mysql_errno($this->_link),'
';
81 echo '错误信息为:',mysql_error($this->_link);
82 die;
83 }
84 }
85
86 /*
87 * 选择默认数据库
88 * 如果没有指定,则不选择
89 */
90 private function _selectDB(){
91 //判断是否需要选择默认数据库,表示不需要,防止为0
92 if($this->_dbname !== ''){
93 //不为空,才选择数据库
94 $sql = "use `$this->_dbname`";
95 if(mysql_query($sql,$this->_link)){
96 //成功
97 }else{
98 //执行失败给出错误信息
99 echo '-_-!SQL执行失败
';
100 echo '错误的SQL为:',$sql,'
';
101 echo '错误代码为:',mysql_errno($this->_link),'
';
102 echo '错误信息为:',mysql_error($this->_link);
103 die;
104 }
105 }
106 }
107
108
109
110 /**
111 * 序列化时执行的方法
112 * @return array每个数组元素为一个需要被序列化的属性名
113 *
114 */
115 public function __sleep(){
116 return array('_host','_post','_user','_pass','_charset','_dbname');
117 }
118
119 /*
120 * 反序列化时被执行
121 * 重新初始化工作
122 */
123 public function __wakeup(){
124124 //连接数据库服务器
125 $this->_connect();
126 //设定连接字符集
127 $this->_setCharset();
128 //选择默认数据库
129 $this->_selectDB();
130 }
131 }
View Code
[PHP房产程序|BBWPS]功能介绍 1、5种信息类别发布:出租、求租、出售、求购、楼盘信息,支持会员发布信息审核; 2、灵活的信息参数设置; 3、充足的信息字段; 4、简单易用的发布/编辑功能,支持配图上传; 5、灵活的信息管理功能; 6、信息输出伪静态,方便搜索引擎抓取数据; 7、支持RSS输出; 8、内置数据高速缓冲技术,可灵活设置缓冲功能是否启动及过期时间; 9、支持 Google 地图
就是说这个字段是整数,长度是10个字符。
明显错了,没有1,2,这样的数据类型 ,还有最后一项不用逗号










