[PHP Framwork 강좌1] 개발환경 셋팅(APMSETUP 설치)

  PC 위주로 설명을 하고자 합니다. 우선은 Window OS 기반으로 설명을 드리겠습니다. 32bit로 컴파일 되어있으므로 64bit에서는 주의를 요하는 바입니다.

1.     APMSETUP 설명

APMSETUP은 윈도우에 APM(APACHE, PHP, MYSQL)를 사용할 수 있도록 자동으로 설치, 설정 해주는 프로그램입니다.

2.     APMSETUP 구성

본 프로그램은 사용에 아무런 제한이 없는 프리웨어입니다.

지원되는 시스템은 NT 시스템(2000/XP/2003/Vista/7/2008)를 지원합니다.

 

Minimum system required: Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 SP1, Windows XP SP2, Windows 2000 Service Pack 4

 

APMSETUP은 윈도우에 APM( Apache, PHP, MySQL )를 사용할 수 있도록 자동으로 설치, 설정 해주는 프로그램 입니다.

 

[2010-01-03]

Apache 2.2.14 (openssl 0.9.8k) [ http://httpd.apache.org ]

           - Server\Apache

           - mod_log_rotate 1.00a

           - mod_security 2.5.10

PHP 5.2.12 [ http://kr.php.net / http://windows.php.net/ ]

           - Server\PHP5

Zend Optimizer v3.3.3 [ http://www.zend.com ]

           - Server\ZendOptimizer

MySQL 5.1.39 [ http://www.mysql.com ]

           - Server\MySQL5

phpMyAdmin 3.2.3 [ http://www.phpmyadmin.net ]

           - Server\phpMyAdmin

CUBRID  [ http://www.cubrid.com ](선택사항) , JRE  [ http://java.sun.com ]

 

3.     다운로드 위치

[Window]
- 다운로드 : http://kldp.net/frs/download.php/5636/APMSETUP7_2010010300.exe

- 미러 : http://dev.naver.com/frs/download.php/1877/APMSETUP7_2010010300.exe


http://www.apmsetup.com/download.php 에 버전별로 다운로드를 받을 수 있습니다.


 

4.     APM 설치

è  다운로드 페이지에서 원하는 APMSETUP 버전을 다운로드 받습니다.

 

è  다운받은 APMSETUP7_2010010300.exe를 실행합니다. OK를 선택합니다.

 

 

è  설치 초기화면입니다. 다음을 선택합니다.

 

            

 

è  사용권 계약 화면입니다. 동의함을 선택합니다.

 

 

 

è  구성요소선택 화면입니다. CUBRID DBMS는 설치를 제외하고 바로 다음을 선택합니다.

 

 

è  설치 위치 선택화면입니다. 설치를 선택합니다.

 

 

è  설치중 화면입니다. 완료 후 다음을 선택합니다.

 

 

è  설치완료 화면이 나오면 설치는 완료되었습니다.




5.     APMSETUP 구성

- APMSETUP 모니터링



 

- APMSETUP 모니터링(자동업데이트 설정과 표시언어를 변경할 수 있습니다)

 

         - Apache 설정(홈 디렉터리, 서버주소, 포트번호등 많이 사용되는 아파치 설정을 변경할 수 있습니다.)

 

        - PHP 설정(PHP설정을 변경할 수 있습니다. PHP인식 확장자, 업로드 용량, 메모리 사용량등을 변경할 수 있습니다.)


      - MYSQL 설정(MySQL설정 파일은 my.ini파일을 수정할 수 있습니다.)


      - 프로그램 설치(APMSETUP에서 새로 추가된 기능입니다. 많이 사용하거나 서버 운영에 필요한 프로그램들을 손쉽게 다운로드 받아서 설치할 수 있습니다. 리스트에서 설치하고자 하는 프로그램을 선택 후 프로그램 설치 진행 버튼을 클릭하여 설치할 수 있습니다)


 


6.     참조사이트

 



다음 시간에는 개발환경 셋팅(이클립스 PDT) 강좌를 올리겠습니다.

하루하루 행복한 시간 되십시오.

참 오랫만에 글을 올리는 것 같습니다..

제가 좀 회사에 적응한다고 나름 바뻐서 이렇게 주말에 올리게 되었습니다..

오늘은 php를 개발한다면 그래도 mysql에 대한 함수를 알아야 할 것 같아서 정리해 보았습니다.

역시 PHP 매뉴얼을 참조해서 내용을 적어보았습니다. 많은 도움이 되었으면 합니다.

1. resource mysql_connect ([ string $server [, string $username [, string $password [, bool $new_link [, int $client_flags ]]]]] )
설명 : MySQL 서버에 접속을 생성하거나 기존 접속을 재사용한다.
인수 :
server(MySQL 서버명을 입력하며, 포트번호가 포함될 수 있다. 예) "hostname:port" 또는, 로컬호스트를 위해 로컬 소켓 경로가 될 수도 있다. 예) ":/path/to/socket" , PHP 지시어 mysql.default_host를 지정하지 않았다면(기본값), 'localhost:3306'입니다. SQL 안전 모드에서는, 이 인수를 무시하고 항상 'localhost:3306' 값을 사용합니다.)
username(사용자명. 기본값은 mysql.default_user로 지정합니다. SQL 안전 모드에서는, 이 인수를 무시하고 사용중인 서버 프로세스를 소유하는 사용자 이름을 사용합니다.)
password(비밀번호. 기본값은 mysql.default_password로 지정합니다. SQL 안전 모드에서는, 이 인수를 무시하고 빈 비밀번호를 사용합니다.)
new_link(동일한 인수로 mysql_connect()을 다시 호출하면, 새로운 link가 생성되는 것이 아니라, 이미 생성된 link 식별자 값을 돌려받게 된다. 단, new_link 로 mysql_connect()를 호출하면 동일한 인수로 mysql_connect()를 이미 호출하였다 하더라도 항상 새로운 접속을 생성한다. SQL 안전 모드에서는, 이 인수를 무시합니다.)
client_flags(client_flags 인수는 다음 상수들을 조합하여 사용할 수 있습니다: 128 (LOAD DATA LOCAL 핸들링 활성화), MYSQL_CLIENT_SSL, MYSQL_CLIENT_COMPRESS, MYSQL_CLIENT_IGNORE_SPACE, MYSQL_CLIENT_INTERACTIVE. 자세한 정보는 예약 상수를 읽어보십시오. SQL 안전 모드에서는, 이 인수를 무시합니다.)
반환값 : 접속 성공시 MySQL link 식별자를 반환하고, 실패시에는 FALSE를 반환한다.

2. bool mysql_select_db ( string $database_name [, resource $link_identifier ] )
설명 : 접속 지시자와 연관된 서버에서 현재 활성화할 데이터베이스를 선택한다. 모든 수반되는 mysql_query() 호출은 활성 데이터베이스에서 처리될 것이다. 
인수 :
database_name(선택할 데이터베이스의 이름.)
link_identifier(MySQL 연결. 지정하지 않으면 mysql_connect()로 연 마지막 연결을 사용합니다. 연결이 없으면, 인수 없이 mysql_connect()를 호출하여 연결을 만듭니다. 연결이 성립되지 않으면 E_WARNING 등급의 오류를 생성합니다.)
반환값 : 성공할 경우 TRUE를, 실패할 경우 FALSE를 반환합니다.

3. resource mysql_query ( string $query [, resource $link_identifier ] )
설명 : mysql_query()는 link_identifier 로 지정한 데이터베이스 서버에 하나의 질의를 전송합니다. (다중 질의는 지원하지 않습니다)
인수 :
query(SQL 질의 -> 질의 문자열은 세미콜론으로 끝나지 않아야 합니다.)
link_identifier(MySQL 연결. 지정하지 않으면 mysql_connect()로 연 마지막 연결을 사용합니다. 연결이 없으면, 인수 없이 mysql_connect()를 호출하여 연결을 만듭니다. 연결이 성립되지 않으면 E_WARNING 등급의 오류를 생성합니다.)
반환값 : mysql_query()는 SELECT, SHOW, DESCRIBE, EXPLAIN, 결과셋을 반환하는 기타 구문에서 성공시 resource를, 오류시 FALSE를 반환합니다. mysql_query()는 다른 형식의 SQL 구문, INSERT, UPDATE, DELETE, DROP 등에서 성공하면 TRUE를, 실패하면 FALSE를 반환합니다. 반환되는 결과 리소스는 mysql_fetch_array()와 같은 결과 테이블을 다루는 함수들에 전달하여 데이터에 접근할 수 있다. SELECT 구문으로 부터 얼마나 많은 행이 있는지 알기 위해서는 mysql_num_rows()를, DELETE, INSERT, REPLACE, UPDATE 구문으로 변경된 행의 개수를 알기 위해서는 mysql_affected_rows()를 사용한다. 질의에 의해 참조되는 테이블에 접근을 허용되지 않은 사용자에 의해 mysql_query()가 실패하면 FALSE를 반환한다.

4. array mysql_fetch_array ( resource $result [, int $result_type ] )
설명 : 인출된 행을 배열로 반환하고, 앞으로 내부 데이터 포인터를 이동한다.
인수 :
result(mysql_query() 호출을 통한 결과 resource.)
result_type(인출될 배열의 형태. 배열의 형태는 다음과 같은 상수가 올 수 있다: MYSQL_ASSOC, MYSQL_NUM, MYSQL_BOTH. 기본값은 MYSQL_BOTH이다.)
반환값 : 인출된 문자열의 배열을 반환하거나 더 이상 인출할 행이 없을 경우에는 FALSE를 반환한다. 인출되는 배열은 result_type 에 따라 결정이 된다. 기본값인 MYSQL_BOTH는 연관 색인과 숫자형 색인 모두 반환할 것이다. MYSQL_ASSOC를 사용하면, mysql_fetch_assoc()처럼 연관된 인덱스 배열로 반환하고, MYSQL_NUM를 사용하면, mysql_fetch_row()처럼 숫자형 인덱스 배열로 반환한다. 동일한 이름을 포함하는 둘 또는 그 이상의 컬럼들은 마지막 컬럼이 우선권을 가질 것이다. 동일한 이름의 다른 컬럼에 접근하기 위해서는 숫자 색인 또는 별명(alias) 컬럼명을 사용하면 된다. 단, 별명 컬럼들은 원래의 컬럼명으로 데이터를 접근할 수 없다.

5. string mysql_result ( resource $result , int $row [, mixed $field ] )
설명 : MySQL 결과 집합으로부터 하나의 셀에 있는 데이터를 반환한다. 거대한 결과 집합으로 작업할 때, 행 전체를 인출하는 함수 중 하나를 사용할 것이다. 이들 함수는 하나의 함수 호출로 다중 셀의 데이터를 반환할 수 있어서 mysql_result()보다 더 빠르다. 또한, 필드 인수로 숫자 오프셋을 사용하는 것이 필드명 또는 테이블명.필드명 인수를 사용하는 것보다 더 빠르다.
인수 :
result (mysql_query() 호출을 통한 결과 resource.)
row(검색된 결과에서 행번호. 행번호는 0부터 시작한다.)
field(검색을 위한 필드 오프셋 또는 이름. The name or offset of the field being retrieved. 필드 오프셋, 필드명 또는 테이블명.필드명(tablename.fieldname)으로 설정이 가능하다. 컬럼 이름이 별명(alias)이라면('select foo as bar from...'), 컬럼명 대신 별명을 사용한다. 정의하지 않으면 첫번째 필드를 검색한다.)
반환값 : 성공하면 MySQL 결과 집합으로부터 하나의 셀의 데이터를, 실패하면 FALSE를 반환한다

6. bool mysql_close ([ resource $link_identifier ] )
설명 : mysql_close()는 link_identifier 와 연관된 MySQL서버의 비영속적 접속을 종료한다. link_identifier 가 기술되지 않으면 최근 접속된 연결을 사용한다. mysql_close()는 비영구적으로 열려진 링크에서는 일반적으로 스크립트 실행 마지막 부분에서 자동으로 종료되므로 사용할 필요가 없다. resource 해제하기.
인수 :
link_identifier(MySQL 연결. 지정하지 않으면 mysql_connect()로 연 마지막 연결을 사용합니다. 연결이 없으면, 인수 없이 mysql_connect()를 호출하여 연결을 만듭니다. 연결이 성립되지 않으면 E_WARNING 등급의 오류를 생성합니다.)
반환값 : 성공할 경우 TRUE를, 실패할 경우 FALSE를 반환합니다.



예시) 간단하게 함수를 만들어서 사용해 보십시오.
class화 사용
class db_connect {
function db_connect($host,$user,$pass,$db) {            
        $connect=@mysql_connect("$host","$user","$pass");
        if(!$connect) {
           //오류처리
            exit;
        }
        else {
            $status=mysql_select_db($db, $connect);
            if(!$status) {
                //오류처리
                exit;
            }
        }
    }

    function query_func($query,$num) {
         switch($num) {
            case (1) : $query=mysql_query($query,$connect);
            case (2) : $query=mysql_num_rows($query); break;
            case (3) : $query=mysql_fetch_array($query); break;
            case (4) : $query=@mysql_result($query,0); break;
            case (5) : $query=mysql_fetch_row($query); break;
            case (6) : $query=mysql_affected_rows($connect); break;
            case (7) : $query=mysql_fetch_assoc($query); break;
        }
        return $query;
    }

    function close() {
        mysql_close($connect);
        return;
    }
 }

사용방법
$DBCON=new db_connect($HOST,$USER,$PWD,$DB);
$rs=$DBCON->query_func($QUERY,1);
$count=$DBCON->query_func($rs,2); //쿼리의 결과행의 갯수를 반환함

while($data=$DBCON->query_func($rs,4)){ //쿼리의 결과값을 배열에 저장함
      //가져온 데이터로 표출구현함
}

지효가 놀자고 해서 이제 글을 마칠까 합니다. 많은 도움되면 좋겠습니다.

개발 중에 필요할 것 같아 사이트를 정리할려고 합니다.

많은 도움이 되었으면 합니다. 계속해서 추가적으로 올립니다.

[apach, php, mysql]
APM사이트 : http://www.apmsetup.com
apache사이트 : http://httpd.apache.org
php사이트 : http://kr.php.net / http://windows.php.net/
mysql사이트 : http://www.mysql.com
phpAdmin사이트 : http://www.phpmyadmin.net
php매뉴얼 : http://docs.php.net/manual/kr/funcref.php
jQuery : http://jquery.com/
JSON : http://json.org/json-ko.html
Javascript소스를 PHP로 : http://phpjs.org

[프레임워크]
CodeIgniter 한국사용자포럼 : http://www.codeigniter-kr.org
CodeIgniter 영문싸이트 : http://www.codeigniter.com

+ Recent posts