-
-
class DataBase - {
- var $pConnect=FALSE;//장기간 사용할지 여부 연결
- var $mHost;//데이터베이스 호스트
- var $mDatabase;
- var $db; //데이터베이스
- var $mUser;//데이터베이스 사용자 이름
- var $mPwd;// 데이터베이스 사용자 비밀번호
- var $mConn;//연결 ID
- var $result;// 쿼리 명령 실행 결과의 리소스 ID
- var $num_rows;// 반환된 항목 수
- var $insert_id;/ / 마지막으로 사용한 INSERT 명령어의 ID를 반환
- var $affected_rows; // 쿼리 명령어의 영향을 받은 컬럼 개수를 반환
- // INSERT, UPDATE의 영향을 받은 컬럼(행)의 개수 또는 삭제.
- // where 없이 삭제한 후 0을 반환합니다.
- //생성자
- 공개 함수 __construct($host,$user,$pwd,$db)
- {
- $this ->mHost =$host;
- $this->mUser=$user;
- $this->mPwd=$pwd;
- $this->db=$db
- }
-
- //데이터베이스 연결
- 공용 함수 connect()
- {
- if($this->pConnect)
- $this->mConn=mysql_pconnect($this- >mHost, $this->mUser,$this->mPwd);//긴 연결
- else
- $this->mConn=mysql_connect($this->mHost,$this-> ;mUser,$ this->mPwd);//짧은 연결
if(!$this->mConn) $this->dbhalt("데이터베이스에 연결할 수 없습니다!") ;
- if($this->db=="") $this->db=$this->dbDatabase;
-
- if(!mysql_select_db($this->db,$ this-> ;mConn))
- $this->dbhalt("데이터베이스를 사용할 수 없습니다!");
- } // eof#dbconnect()
// 데이터베이스 변경
- 공개 함수 dbChange($db){
- $this->db=$db;
- $this->connect();
- }
-
public functionexecute($sql){ - $this->result=mysql_query($sql);
- return $this-> ;
- }
//배열 가져오기 - 인덱스 및 연관
- 공개 함수 fetchArray($resultType=MYSQL_BOTH)
- {
- return mysql_fetch_array($this - >result,$resultType);
- }
-
- //연관 배열 가져오기
- public function fetchAssoc()
- {
- return mysql_fetch_assoc($this->result);
- }
-
- //숫자 인덱스 배열 가져오기
- public function fetchIndexArray()
- {
- return mysql_fetch_row($this->result);
- }
-
- //객체 배열 가져오기
- public function fetchObject()
- {
- return mysql_fetch_object($this->result);
- }
-
- //숫자 반환 레코드 행
- function numRows()
- {
- return mysql_num_rows($this->result);
- }
//모든 데이터베이스 이름 반환 호스트
- 공용 함수 dbNames()
- {
- $rsPtr=mysql_list_dbs($this->mConn);
- $i=0;
- $cnt=mysql_num_rows($rsPtr) ;
- while ($i {
- $rs[]=mysql_db_name($rsPtr,$i);
- $i ;
- }
- return $rs;
- }< ;/p>
function dbhalt($errmsg){
- $msg="데이터베이스에 문제가 있습니다!";
- $msg=$errmsg;
- echo "$msg";
- die();
- }
//삭제
- 함수 delete($sql){
- $result= $this->execute($sql ,$dbbase);
- $this->affected_rows=mysql_affected_rows($this->dbLink);
- $this->free_result($result);
- return $this->affected_rows;
- }
//
- 함수 추가($sql){
- $result=$this->execute ($sql,$dbbase);
- $this->insert_id=mysql_insert_id($this->dbLink);
- $this->free_result($result);
- return $this-> ;insert_id;
- }< /p>
//변경
- 함수 업데이트($sql){
- $result=$this->execute($sql,$dbbase );
- $this-> ;affected_rows=mysql_affected_rows($this->dbLink);
- $this->free_result($result);
- return $this->affected_rows;
- }
-
- // 연결 닫기
- function dbclose(){
- mysql_close($this->dbLink);
- }
- }// 클래스 종료
- ?> ;
-
코드 복사
통화 예:
-
-
- include "class_database.php";
$mydb->connect();
- $mydb->execute("GBK 이름 설정 ");
- $mydb->execute("usrs에서 * 선택");
- print_r($mydb->dbNames());
- ?>
-
코드 복사
|