클래스 만들기


단순하게 SQL 언어 문법으로 실습과 결과를 확인하는 것은 실제적인 PHP 연동 코딩을 하기에는 추상적인 면이 있을 수 있습니다. 따라서 이 책에서는 직접 SQL 명령과 이를 적 용한 소스 코드를 함께 작성하여 실제적인 동작 결과를 확인할 수 있도록 구체적인 예제 를 많이 작성해 보도록 하겠습니다.

DB 연동 작업은 먼저 DB 접속 연결과 SQL 명령어 실행 2개의 코드로 구분할 수 있습 니다. 매번 실행 코드에 DB를 접속하는 설명에 지면을 낭비하는 것은 불필요합니다. 따 라서 DB 접속 및 처리를 위한 별도의 클래스 예제를 하나 만들어서 이를 재사용하고자 합니다.

그리고 각각의 예제들은 관련 클래스 메서드를 추가하여 사용함으로 나중에 필요한 DB 처리 클래스 하나를 완성하는 것으로 합니다.

예제 파일 | mysql.class.php

<?php

    class JinyMysql
    {
        public $dbcon;
 
        // 데이터베이스 초기 연결
        function __construct()
        {
            
            $this->dbcon = mysqli_connect(
                        $GLOBALS['mysql_host'], 
                        $GLOBALS['mysql_user'], 
                        $GLOBALS['mysql_password'], 
                        $GLOBALS['mysql_database']);
            if (mysqli_connect_errno()) {
                printf("Connect failed: %s\n", mysqli_connect_error());
                exit();
            } else {
 
                $this->msgEcho("mysql connected!");
                mysqli_query($this->dbcon, "set names utf8");
 
            }
        }
 
        public function msgEcho($msg)
        {
            echo $msg."<br>";
        }

    }

?>
 

위의 예제 클래스는 앞으로 확장해 나갈 기본 클래스 뼈대입니다. 이곳에 추가적으로 기능을 하나씩 덧붙여 가면서 실습하도록 하겠습니다.

예제 클래스를 삽입하여 DB를 접속하고 테스트하는 예제 코드를 만들어 보겠습니다.

예제 파일 | sql-04.php

<?php

	include "dbinfo.php";
	include "mysql.class.php";

	// ++ Mysqli DB 연결.
	$db = new JinyMysql();

?>

화면 출력

mysql connected! 

처음 DB 접속에 대한 환경 소스 파일을 삽입합니다. 두 번째 줄에는 작성한 클래스 소스 파일을 삽입합니다. 실제적인 DB 접속 인스턴스를 new 키워드를 통하여 생성합니다.