---------- php debug ---------- Server=localhost;DataBase=mysql;UserID=root;PassWord=123456 resource(5) of type (mysql result)
Output completed (1 sec consumed) - Normal Termination
<?php class DBCLS { #---------------------------------------------------- # 数据库控制类 DBCLS # 作者:yms # [email protected] # 2005-5-30 # 2005-5-31 # php_v5.0.1 # Editplus Text Editer v2.12(76) #----------------------------------------------------
//debug 调试开关 var $debug = true;
//debuginfo 错误信息,调试信息 var $debuginfo = "debug informations:\r\n";
//db_server MySQL主机地址 var $db_server;
//db_name 数据库名 var $db_name;
//db_user 数据库用户名 var $db_user;
//db_passwd 密码 var $db_passwd;
//db_links 数据库连接 var $db_link;
//db_query_sql SQL语句 var $db_query_sql = "show tables";
//db_recordset 结果集,记录集 var $db_recordset;
//ready 就绪开关 var $conntstr_ready = false; var $link_ready = false; var $db_ready = false;
//set or return Connection String 返回,或者设定连接字符串 function connection_string($connstr="") { if("" == $connstr) { //如果没有参数传入,返回已有的连接字符 return "Server=".$this->db_server.";DataBase=".$this->db_name.";UserID=".$this->db_user.";PassWord=".$this->db_passwd; } else { //否则,解析连接字符,初始化变量 preg_match_all("|([a-zA-Z0-9]*)=([a-zA-Z0-9]*);*|", $connstr, $tmparr, PREG_PATTERN_ORDER); $this->db_server = (strtolower($tmparr[1][0]) == "server")?$tmparr[2][0]:""; $this->db_name = (strtolower($tmparr[1][1]) == "database")?$tmparr[2][1]:""; $this->db_user = (strtolower($tmparr[1][2]) == "userid")?$tmparr[2][2]:""; $this->db_passwd = (strtolower($tmparr[1][3]) == "password")?$tmparr[2][3]:""; //var_dump($tmparr);
if("" == $this->db_server or "" == $this->db_name or "" == $this->db_user or "" == $this->db_passwd) $this->conntstr_ready = false; //如果有其中一个以上变量被赋以空字符串"",准备未就绪 else $this->conntstr_ready = true; return $this->conntstr_ready; }
}
//连接数据库,返回连接对象 function connect() { if(!$this->conntstr_ready) { if($this->debug){$this->debuginfo .= "连接字符串无效!\r\n";} return $this->link_ready; } if($this->db_link = @mysql_connect($this->db_server, $this->db_user, $this->db_passwd)) { $this->link_ready = true; return $this->link_ready; } }
//选择数据库 function select($db = "") { if(!$this->db_link) { if($this->debug){$this->debuginfo .= "没有可用的数据库连接!\r\n";} $this->db_ready = false; } if("" == $db) { if(mysql_select_db($this->db_name)) $this->db_ready = true; } if(mysql_select_db($this->db_name = $db)) $this->db_ready = true; return $this->db_ready; }
//执行查询 function execute($SQL = "") { if("" != $SQL) { $this->db_query_sql = $SQL; //if($this->debug){$this->debuginfo .= "SQL is null!\r\n";} //return false; } if("" == $this->db_query_sql) { if($this->debug){$this->debuginfo .= "SQL is null!\r\n";} return false; } $this->db_recordset = mysql_query($this->db_query_sql); return true; } }
$dbmy = new DBCLS(); //创建一个DBCLS对象 if(!$dbmy->connection_string("Server=localhost;DataBase=mysql;UserID=root;PassWord=123456"))//初始化DBCLS对象dbmy
print $dbmy->debuginfo; //初始化失败,输出错误信息
else
print $dbmy->connection_string(); //初始化成功,输出连接字符串 print "\r\n";
if(!($dbmy->connect()) or !($dbmy->select())) //如果连接数据库,或者选择数据库失败 print $dbmy->debuginfo; //输出出错信息 //$dbmy->db_query_sql = "select * from user"; if($dbmy->execute()) //执行查询指令 { //如果不出错 var_dump($dbmy->db_recordset);//输出返回的结果集 } ?>
输出信息:
---------- php debug ---------- Server=localhost;DataBase=mysql;UserID=root;PassWord=123456 resource(5) of type (mysql result)
Output completed (1 sec consumed) - Normal Termination
|