MySQL & PHP - MySQL을 이용하는데 필요한 PHP
MySQL을 이용하는데 필요한 PHP
웹 응용프로그램에서 MySQL 사용하기
MySQL 콘솔창에서 SELECT나 INSERT같은 SQL 명령을 입력함으로써 비로소 MySQL이 시작된다. 즉, 'MySQL의 데이터
베이스를 이용하려면 SQL을 사용할 줄 알아야 한다. 그렇지만 MySQL을 조작하는 방법이 이것뿐이라면, MySQL이 전
세계에서 가장 많은 사용량을 유지하지는 못할 것이다. MySQL의 사용법은 그렇게 단순하거나 무미건조 하지 않다.
웹 브라우저에서 버튼 하나만 클릭하는 것만으로 MySQL의 데이터베이스를 조작활 수 있는 응용 프로그램을 만들 수 도
있다.
예를 들어 '삭제' 라는 버튼을 눌었을때 할당된 기능을 실현하는 SQL문을 작동 시킬 수 있다. 이렇게 웹 브라우저를 통해서
MySQL 데이터 베이스를 이용할 수 있다. 이러한 구조는 현재까지도 홈쇼핑, 학교 홈페이지, 게시판 등 다양한 분야에
이용된다.
웹 브라우저를 사용자 인터페이스로 만들고, 네트워크를 통해 웹 서버 측에 배치한 MySQL을 조작하는 시스템을 웹 응용
프로그램 ( Web Application )이라고 한다. 웹 응용프로그램을 만들기 위해서는 프로그램 언어가 필요한데 MySQL은 Perl,
C, PHP, Java 등 많은 프로그램 언어를 지원하고 있다.
웹 서버와 클라이언트
웹 페이지에는 '하이퍼 링크'라는 것이 있는데 이를 클릭하면 전 세계의 모든 콘텐츠에 접속할 수 있다. 하이퍼 링크에는
' A라는 장소에 있는 B라는 문서'라는 정보가 들어있다. 이러한 하이퍼 링크의 특성은 Web발전에 초석이 되었다.
【 웹 서버 】
A라는 장소는 특정 웹 서버를 의미한다. 웹 서버는 인터넷상에 접속되어 있는 컴퓨터를 가리키는데, 이 컴퓨터에는 서버로서
기능을 하기 위한 응용 프로그램이 설정되어 있다. 서버는 접속한 클라이언트의 요구에 맞춰 저장된 데이터를 보내거나
요청한다.
【 클라이언트 】
웹 서버를 이용하는 사용자의 컴퓨터를 클라이언트라고 한다. 사용자가 하이퍼 링크를 클릭하면 클라이언트는 지정된
웹 서버에 'B를 전송 하시오' 라는 정보를 보낸다. 이 요구를 받은 웹 서버는 지정된 B라는 텍스트나 이미지등 의 데이터를
클라이언트 즉 우리가 늘 보는 웹브라우저에 보내지는것이다.
↑ 웹 브라우저는 웹 서버에 서비스를 요청하고, 웹 서버는 요청에대한 응답을 보내주는데 이는 기본적인 HTTP 통신이다.
# 요청 - 응답 - 종료
【 웹 서버의 역활 】
클라이언트의 요구에 맞춰 웹 서버가 콘텐츠를 전송하는 처리는 HTTP ( Hyper Text Transfer Protocol )라는 프로토콜을
통해 이루어진다. 웹 페이지의 URL은 http://... 로 시작하는데 , 이 http://에서 'HTTP 프로토콜로 통신' 라고 선언 되고 있는
것이다.
【 Apache와 웹 서버 】
웹 서버의 기능은 인터넷에 서버로서 접속되어 있는 컴퓨터에 응용프로그램이 담당한다. 웹 서버 기능을 하는 응용프로그램
은 Apache 소프트웨어 재단에서 제공하는 Apache(아파치)가 유명하다. Apache는 MySQL과 마찬가지로 오픈 소스로 무료로
사용 할 수가 있다. MySQL과 PHP에 가장 잘 맞는 웹 서버 응용프로그램은 Apache라고해도 과언이 아니다. 필자는 현재
Linux( CentOS-6.9)에 Apache와 MySQL을 설치하고 실습을 해보려고 한다.
웹에서 동작하는 프로그램
웹에서 동작하는 프로그램의 구조는 크게 CGI와 스크립트가 있다.
【 CGI 】
CGI( Common Gateway Interface )는 프로그램을 서버에 배치하고 웹 브라우저에서 호출이 왔을 때 실행하는 것이다.
CGI 프로그램을 만들 때에는 다양한 어어를 사용할 수 있다. 특히 Perl이 자주 쓰인다.
【 스크립트 】
스크립트는 처리를 자동으로 실행하기 위해 만들어진 간단한 프로그램을 의미한다. 텍스트 파일 단독으로 만들거나 HTML
파일 안에 기술하는 등 다양한 형태가 있다.
( 웹에서 동작하는 스크립트에 한정한다면, HTML 파일안에 스크립트를 기술해서 필요에따라 동작하도록 하는것이 일반적 )
현재, 웹에서 이용되는 스크립트에는 클라이언트에서 동작하는 것과 웹 서버에서 동작하는 2가지로 구분된다.
ㆍ클라이언트 측 스크립트
Javascript는 클라이언트 측에서 동작하는 스크립트이다. 웹 서버와 전혀 상관없이 웹 페이지를 열람하는 컴퓨터 내에서
프로그램이 실행된다. 즉, 클라이언트 스크립트에서 웹 서버는 클라이언트 측에 스크립트를 보내고 나면 그 후에 어떤 작업
에도 관여할 수 없다.
클라이언트 환경에서 동작하는 것이기 때문에 브라우저에서 일어나는 동작이나 표시를 간단하게 제어할 수 있다.
( 단, 웹 브라우저의 환경에따라 다르게 적용될 수도 있다. )
ㆍ서버 측 스크립트
클라이언트가 아닌 웹서버에서 실행되는 서버 측 스크립트이다. 클아이언트에서 명령이 전달되면 웹 서버에서 처리가
이루어지고 그 결과가 클라이언트에 전달된다. 클라이언트 측은 처리된 결과를 보여주기만 한다. 일반적으로 데이터베이스
처리는 서버 측에서 이루어지기 때문에 서버측 스크립트가 주로 담당한다.
↑ 클라이언트 측 스크립트와 서버 측 스크립트
PHP란?
PHP는 웹 서버 측에서 동작하는 서버측 스크립트이다. 실행하기 위한 모듈( 최소 단위의 프로그램 )은 웹 서버에 있으며,
이를 스크립트 명령으로 실행하다. 일반적으로 동작은 매우 간단하고 스크립트 작성이 쉽다.
PHP의 풀 네임은 PHP : Hypertext Preprocessor이며, 말 그대로 웹 응용프로그램을 개발하기 위한 프로그램 언어이다.
Apache나 Microsoft에서 개발한 웹 서버 응용프로그램인 IIS 등 많은 웹 서버에 대응하며, MySQL을 비롯한 많은
RDBMS을 지원하고 있다.
PHP.net라는 웹 사이트를 운영하며 이를 통해 개정된 명령어나 기능에대해 자세히 알 수 있고 기본적인 레퍼런스에대한
정보도 얻을 수 있는 유용한 사이트이다.