고급웹프로그래밍 () Lectures 11 & 12: 2005 년중등 1급정교사연수 문양세컴퓨터과학과강원대학교자연과학대학 PHP 언어소개 (1/2) PHP: (Professional) Hypertext Preprocessor or Personal Home Page PHP는웹프로그래밍언어이다. 서버에서동작하는스크립트 (script) 언어 주로동적인 (dynamic) 웹페이지를구성할때많이사용됨 PHP의성능과기능은계속해서향상되고있다. 1994년 Rasmus Lerdorf 1995년 PHP Version 2 1998년 PHP Version 3 2000년 PHP Version 4 PHP는배우고프로그래밍하기쉬운언어이다. 많은수의함수및라이브러리를포함 C, Perl, Java 언어의문법과비슷함 Page 2 1
PHP 언어소개 (2/2) 전세계적으로많은사람들이 PHP 를사용하고있다. 2001 년 6 월, 675 만개이상의도메인에서사용 PHP 는다양한데이터베이스와쉽게연동할수있다. Informix, MS-SQL, msql, MySQL, Oracle, Sybase PHP 는다양한컴퓨터상에서동작된다. Windows, Unix, Linux 등거의모든기종의컴퓨터에서동작가능 PHP 는다양한라이브러리를제공한다. PDF, XML, 세션, 정규표현식, SNMP, IMAP, COM 등에대한라이브러리지원 Page 3 서버에서수행되는 PHP (1/2) HTML 요청 : 클라이언트에서수행됨 www.kangwon.ac.kr 서버컴퓨터 abc.html 인터넷 http://www.kangwon.ac.kr/abc.html Page 4 2
서버에서수행되는 PHP (2/2) PHP 요청 : 서버에서수행되어클라이언트에는결과전달 스크립트엔진 HTML 파일시스템 abc.php www.kangwon.ac.kr 서버컴퓨터 DB request 웹서버 인터넷 http://www.kangwon.ac.kr/abc.php Page 5 예제로본 HTML 과 PHP 의차이 (1/12) HTML 로구현한 과일쇼핑몰 예제 (HTML main source) <html> <body> 원하는가격을누르십시요.<br> <form name=fruit30 action=./fruit30.html > <input type=submit value= 30원이하 > </form> <form name=fruit60 action=./fruit60.html > <input type=submit value= 60원이하 > </form> <form name=fruit90 action=./fruit90.html > <input type=submit value= 90원이하 > </form> </body> </html> Page 6 3
예제로본 HTML 과 PHP 의차이 (2/12) HTML 로구현한 과일쇼핑몰 예제 (HTML main result) Page 7 예제로본 HTML 과 PHP 의차이 (3/12) HTML 로구현한 과일쇼핑몰 예제 (HTML sub-menu(30 원 ) source) <html> <body> 가격이 30원이하인과일의목록입니다.<br> <table border=1> <tr><th> 이름 </th><th> 가격 </th></tr> <tr><td> 사과 </td><td>10</td></tr> <tr><td> 배 </td><td>20</td></tr> <tr><td> 복숭아 </td><tr>30</td></tr> </table> </body> </html> Page 8 4
예제로본 HTML 과 PHP 의차이 (4/12) HTML 로구현한 과일쇼핑몰 예제 (HTML sub-menu(30 원 ) result) Page 9 예제로본 HTML 과 PHP 의차이 (5/12) HTML 로구현한 과일쇼핑몰 예제 (HTML sub-menu(60 원 ) source) <html> <body> 가격이 60원이하인과일의목록입니다.<br> <table border=1> <tr><th> 이름 </th><th> 가격 </th></tr> <tr><td> 사과 </td><td>10</td></tr> <tr><td> 배 </td><td>20</td></tr> <tr><td> 복숭아 </td><td>30</td></tr> <tr><td> 수박 </td><td>40</td></tr> <tr><td> 감 </td><td>50</td></tr> <tr><td> 토마토 </td><td>60</td></tr> </table> </body> </html> Page 10 5
예제로본 HTML 과 PHP 의차이 (6/12) HTML 로구현한 과일쇼핑몰 예제 (HTML sub-menu(60 원 ) result) Page 11 예제로본 HTML 과 PHP 의차이 (7/12) HTML 로구현한 과일쇼핑몰 예제 (HTML sub-menu(90 원 ) source) <html> <body> 가격이 90원이하인과일의목록입니다.<br> <table border=1> <tr><th> 이름 </th><th> 가격 </th></tr> <tr><td> 사과 </td><td>10</td></tr> <tr><td> 배 </td><td>20</td></tr> <tr><td> 복숭아 </td><td>30</td></tr> <tr><td> 수박 </td><td>40</td></tr> <tr><td> 감 </td><td>50</td></tr> <tr><td> 토마토 </td><td>60</td></tr> <tr><td> 바나나 </td><td>70</td></tr> <tr><td> 키위 </td><td>80</td></tr> <tr><td> 파인애플 </td><td>90</td></tr> </table> </body> </html> Page 12 6
예제로본 HTML 과 PHP 의차이 (8/12) HTML 로구현한 과일쇼핑몰 예제 (HTML sub-menu(90 원 ) result) Page 13 예제로본 HTML 과 PHP 의차이 (9/12) PHP 로구현한 과일쇼핑몰 예제 (PHP main source) <html> <body> <form name=fruit method=post action=./fruit2.php > 원하는가격을입력하십시요.<br> 가격 : <input type=text name=low><br> <input type=submit value= 찾기 > </form> </body> </html> Page 14 7
예제로본 HTML 과 PHP 의차이 (10/12) PHP 로구현한 과일쇼핑몰 예제 (PHP main result) Page 15 예제로본 HTML 과 PHP 의차이 (11/12) PHP 로구현한 과일쇼핑몰 예제 (PHP dynamic page source) <?PHP $fruit = array ( 사과 => 10, 배 => 20, 복숭아 => 30, 수박 => 40, 감 => 50, 토마토 => 60, 바나나 => 70, 키위 => 80, 파인애플 => 90, 대추 => 100); print 가격이. $low. 원이하인과일의목록입니다. ; print <table border=1><tr><th> 이름 </th><th> 가격 </th></tr> ; foreach ($fruit as $name => $price) { if ($price <= $low) print <tr><td>. $name. </td><td>. $price. </td></tr> ; } print </table> ;?> Page 16 8
예제로본 HTML 과 PHP 의차이 (12/12) PHP 로구현한 과일쇼핑몰 예제 (PHP dynamic page result) Page 17 APM 설치요약 APM(Apache+PHP+MySQL) 을설치한다. 관련사이트 : http://www.apmsetup.com Windows 환경, Linux 환경, UNIX 환경중자신이손쉽게사용할수있는환경을택하여 APM 을설치한다. Page 18 9
APM Setup 페이지 (www.apmsetup.com) Page 19 APM Setup 다운로드 Page 20 10
APM Setup 절차 (1/5) Page 21 APM Setup 절차 (2/5) Page 22 11
APM Setup 절차 (3/5) Page 23 APM Setup 절차 (4/5) Page 24 12
APM Setup 절차 (5/5) Page 25 APM 디렉토리살펴보기 (1/3) Page 26 13
APM 디렉토리살펴보기 (2/3) Page 27 APM 디렉토리살펴보기 (3/3) Page 28 14
APM Setup 환경설정 (1/4) Page 29 APM Setup 환경설정 (2/4) Page 30 15
APM Setup 환경설정 (3/4) Page 31 APM Setup 환경설정 (4/4) Page 32 16
APM 설치확인 (1/2) 메모장을열어다음과같이간단한형식의 PHP 파일 (test.php) 을작성한다. <? Phpinfo();?> 웹브라우저에서 http://localhost/test.php 를입력하여 PHP 버전등의정보가정상적으로출력되면바르게설치된것이다. Page 33 APM 설치확인 (2/2) APM Setup 메뉴에서 phpmyadmin 을수행하여확인한다. Page 34 17
Tips APM(Apache+PHP+MySQL) 사용환경구축 Windows, Linux, UNIX 등의환경중에서자신이사용하기에가장적합한환경을택하여 APM을설치할수있다. APM 환경구축은이후실습 ( 과제 ) 수행을위해서필수적인요소이다. Page 35 18