| < ? class SQL { var $Driver; //實際操作的數據庫驅動子類 var $connection; //共用的數據庫連接變量 function DriverRegister($d) { if($d!="") { $include_path = ini_get("include_path"); $DriverFile = $include_path."/".$d.".php"; //驅動的存放路徑必須在PHP.ini文件中設定的INCLUDE_PATH下 if( file_exists( $DriverFile)) //查找驅動是否存在 { include($DriverFile); $this->Driver = new $d(); // 根據驅動名稱生成相應的數據庫驅動類 return true; } } return false; //注冊驅動失敗 } function Connect($host,$user,$passwd,$database)//連接數據庫的函數 { $this->Driver->host=$host; $this->Driver->user=$user; $this->Driver->passwd=$pas swd; $this->Driver->database=$d atabase; $this->connection = $this->Driver->Connect(); } function Close()//關閉數據庫函數 { $this->Driver->close($this->connection); } function Query($queryStr)//數據庫字符串查詢函數 { return $this->Driver->query($queryStr,$this->connection); } function getRows($res)//查找行 { return $this->Driver->getRows($res); } function getRowsNum($res)//取得行號 { return $this->Driver-> getRowsNum ($res); } } ? > |
| < ? Class MySQL { var $host; var $user; var $passwd; var $database; function MySQL() //利用構造函數實現變量初始化 { $host = ""; $user = ""; $passwd = ""; $database = ""; } function Connect() { $conn = MySQL_connect($this->host, $this->user,$this->passwd) or die("Could not connect to $this->host"); MySQL_select_db($this->database,$conn) or die("Could not switch to database $this->database;"); return $conn; } function Close($conn) { MySQL_close($conn); } function Query($queryStr, $conn) { $res =MySQL_query($queryStr, $conn) or die("Could not query database"); return $res; } function getRows($res) { $rowno = 0; $rowno = MySQL_num_rows($res); if($rowno>0) { for($row=0;$row<$rowno;$row ) { $rows[$row]=MySQL_fetch_row($res); } return $rows; } } function getRowsNum($res) { $rowno = 0; $rowno = mysql_num_rows($res); return $rowno; } } ? > |
| < ? Include(“SQL.php”); $sql = new SQL; //生成新的Sql對象 if($sql-> DriverRegister(“MySQL”)) //注冊數據庫驅動 { $sql->Connect(“localhost”,”root”,””,”test”); $res=$sql->query(“select * from test”); //返回查詢記錄集 $rowsnum = $sql->getRowsNum($res); if($rowsnum > 0) { $rows = $sql->getRows($res); foreach($rows as $row) //循環取出記錄集內容 { foreach($row as $field){ print $field;} } } $sql->Close(); } ? > |
新聞熱點
疑難解答