강의 컨설팅 트레이닝 무료진단 무료책자 마케팅편지 마케팅정보공유 다이어리 서비스제휴 고객센터

간단한 PHP Class예제 (DB Class)
작성자 : 13 김영철
등록날짜 : 2009.01.13 10:19
3,352

<?
class ClassDB_Hawk5_Mysql {
    // PRIVATE 변수
    VAR $CONN;               // DB 커넥션 변수
    VAR $ERR_QUERY;     // 에러가 발생한 쿼리
    VAR $ERR_MSG;        // 에러 메세지
    VAR $RESULT;           // 쿼리 결과
    VAR $REC_COUNT;    // 레코드 합계
    VAR $ROW;               // 레코드 결과 FETCH
    VAR $ROWNUM;        // 현재 레코드 번호


    //클래스 생성자..
   //클래스를 생성하면.. 자동으로 실행된다..
    function ClassDB_Hawk5_Mysql() {
        $DB_HOST = "localhost";
        $DB_USER = "hawk5";
        $DB_PWD = "hawk5";
        $DB_NAME = "DB_hawk5";

        $this->CONN = mysql_connect($DB_HOST, $DB_USER, $DB_PWD) or die("디비연결 실패지롱!");
        mysql_select_db($DB_NAME, $this->CONN) or die("디비명 똑바로 입력해랑");
    }

    

    // 쿼리문 실행

    function Execute($query) {
        $this->ERR_MSG = "";

        if (!$this->RESULT = mysql_query($query)) {
            $this->ERR_QUERY = $query;
            $this->ERR_MSG = mysql_error();
            return false;
        }else{
            $this->REC_COUNT = mysql_num_rows($this->RESULT);
            $this->ROW = mysql_fetch_bject($this->RESULT);
            $this->ROWNUM = 0;
        }
    }

    // RecordCount
    function RecordCount() {
        return $this->REC_COUNT;
    }

    // 레코드 처음
    function MoveFirst() {
        mysql_data_seek($this->RESULT, 0);
        $this->ROW = mysql_fetcht_assoct($this->RESULT);
    }

    // 레코드 마지막
    function MoveLast() {
        mysql_data_seek($this->RESULT, $this->REC_COUNT - 1);
        $this->ROW = mysql_fetcht_assoct($this->RESULT);
    }

    // 다음 레코드
    function MoveNext() {
        $this->ROWNUM = $this->ROWNUM + 1;

        if ($this->ROWNUM < $this->REC_COUNT) {
            mysql_data_seek($this->RESULT, $this->ROWNUM);
            $this->ROW = mysql_fetcht_assoct($this->RESULT);
            return true;
        }
        else { return false; }
    }

    // 이전 레코드
    function MovePrev() {
        $this->ROWNUM = $this->ROWNUM - 1;

        if ($this->ROWNUM >= 0) {
            mysql_data_seek($this->RESULT, $this->ROWNUM);
            $this->ROW = mysql_fetcht_assoct($this->RESULT);
            return true;
        }
        else { return false; }
    }

    // 필드값 가져오기
    function Field($field_name) {
        return $this->ROW[$field_name];
    }

    // 데이터베이스 접속 종료
    function Close() {
        mysql_close($this->CONN);
    }

    //에러메서지를 보여준다
    function ShowError() {
        if (strlen($this->ERR_MSG) > 0) {
            $msg  = "<h2 align=\"center\">SQL ERROR!</h2>";
            $msg .= "<table border=0>";
            $msg .= "<tr><td bgcolor=\"green\">";
            $msg .= "<table border=\"0\" cellpadding=\"1\" cellspacing=\"1\"width=\"600\" height=\"88\">";
            $msg .= "<tr><th height=\"16\"><font color=\"#FFFFFF\">실행된 SQL</font></th></tr>";
            $msg .= "<tr><td bgcolor=\"white\" height=\"16\" align=\"center\">".$this->QUERY."</td></tr>";
            $msg .= "<tr<th height=\"16\"><font color=\"#FFFFFF\">Error 내용</font></th></tr>";
            $msg .= "<tr><td bgcolor=\"white\" height=\"28\" align=\"center\">".$this->ERR_MSG."</td></tr>";
            $msg .= "</table>";
            $msg .= "</td>";
            $msg .= "</tr>";
            $msg .= "</table>";

            echo $msg;
        }
    }
}

 


/*
========================= 사용예제 =====================================
include "ClassDB_Hawk5_Mysql.php";

// 클래스 생성,
$db = new ClassDB_Hawk5_Mysql();

// 쿼리 실행
$query = "SELECT * FROM TB_Member ORDER ";


//실행후 오류가 있으면 출혁하고 없으면 총결과 갯수를 출력한다
if($db->Execute($query))
{
 // 레코드 총합
 echo "레코드 합계 : ";
 echo $db->RecordCount();
}
else
{
    // 오류가 있다면 출력
     $db->ShowError();
  exit;
}

// 레코드를 가져와서 출력
do {
    echo $db->Field("UserId");
    echo "<br> 

[출처] 웹디황용

"쇼핑몰·홈페이지·오픈마켓
블로그·페이스북·이메일 등의 각종 마케팅 글쓰기,
각종 광고, 영업, 판매, 제안서, 전단지
반응율 3배×10배 이상 높이는 마법의 8단계 공식"
자세히보기

Comments

번호 제목 글쓴이 날짜 조회
3045 하드,CPU,RAM 지원표 M 최고의하루 12.18 3392
3044 Digital로 표현된 수묵이 번지는 효과- Cel.. 글 : 김기병(주식회사 ECO 디자인팀 대리, 경인여대 출강) 99 단국강토 01.12 3391
3043 띠 구하는 함수 13 김영철 01.14 3390
3042 웹프로그래밍 언어별 데이터베이스연결 (ASP편) 13 김영철 01.23 3389
3041 제약조건(1) M 최고의하루 12.20 3386
3040 DOS창에서 비디오카드 모델명 확인 하기 2 천진난만 02.20 3381
3039 [mysql] mysqladmin 사용법 13 김영철 01.29 3371
3038 익스플로러(IE)플러그인ActiveX액티브엑스활성화특허침해에따른 설계변경패치에대한 개발코딩간편변경방법 13 김영철 01.14 3370
3037 체크박스 배열을 edit 수정페이지로 불러오기 M 최고의하루 01.12 3369
3036 MSSQL Server DBA 가이드-5 M 최고의하루 12.26 3368
3035 옷주름만들기 10 액션쟁이 01.12 3363
3034 PHP 환경 설정을 변경하는 방법 13 김영철 01.14 3361
3033 AJAX관련 IE 버그. -1072896658 13 김영철 01.29 3361
3032 포토샵 cs4에서 레이어가 살아있는 gif파일 열기 2 핑크 01.20 3358
3031 색보정,칼라링^^ 10 액션쟁이 12.31 3355
3030 총알자국 10 액션쟁이 01.12 3355
3029 내 PC IP 아는 간단한 방법 댓글1 2 성공맨 04.03 3355
3028 select BOX 동적으로 선택하기 13 김영철 01.15 3354
3027 register_global 가 off 되어 있을때 사용방법 13 김영철 01.15 3354
열람중 간단한 PHP Class예제 (DB Class) 13 김영철 01.13 3353
3025 마우스 On 시에 표 색상 바꾸기 99 단국강토 02.10 3350
3024 [CSS]링크 위에 마우스커서 올라가면 누른 효과 99 단국강토 02.05 3347
3023 CPU 점유율 점검 및 CPU최적화 기초 기법 99 단국강토 12.30 3347
3022 php에서 유니코드 인코딩하기 13 김영철 01.13 3346
3021 특수문자 입력 방지하기 99 단국강토 02.19 3341
3020 input box꾸미기 99 단국강토 01.19 3339
3019 windows 2003 MySQL 서비스 프로그램 등록 1067 에러 13 김영철 01.29 3339
3018 저항(전자회로) 읽는 프로그램 2 춘몽 11.22 3335
3017 [JS] 자바스크립트 typeof[(expression]] 99 단국강토 02.16 3331
3016 메트로놈 입니다.. 2 춘몽 11.22 3322
마케팅
특별 마케팅자료
다운로드 마케팅자료
창업,경영
기획,카피,상품전략
동기부여,성취