PHP 웹 프로그래밍 (PHP Web Programming) PHP 개요 문양세 강원대학교 IT대학 컴퓨터과학전공
웹 애플리케이션 개발 기술 CGI 프로그래밍 Perl, C, Shell Script, … 웹 프로그래밍 기술 요약 CGI 프로그래밍 Perl, C, Shell Script, … 스크립트 프로그래밍 ASP, JSP, PHP 컴포넌트 + 스크립트 기반의 웹 에플리케이션 ASP.NET, EJB 웹과 인터넷 활용 및 실습 In this class (In particular, PHP) In the advanced course (or DO IT BY YOURSELF)
플랫폼 별 웹 애플리케이션 개발 환경 Microsoft 기반 Java 기반 Linux(UNIX) 기반 웹 프로그래밍 기술 요약 Microsoft 기반 HTML, DHTML(Dynamic HTML), Internet Explorer, IIS, ASP COM/DCOM, Active X Component, .NET SQL Server Java 기반 JavaScript, Servlet, JSP JavaBeans/EJB, EJB Container, J2EE Linux(UNIX) 기반 Apache, PHP MySQL, PostgressSQL, Oracle
웹 프로그래밍 분류 Client Side Programming Server Side Programming 웹 프로그래밍 기술 요약 Client Side Programming ActiveX Controls (Visual C++ or VB) Java Applet JavaScript DHTML Server Side Programming CGI (Perl, C, ShellScript, …) Java Servlet ASP (Active Server Page) JSP (Java Server Page) PHP (Personal Home Page Tools) Client(PC, Browser)에서 수행 Server(Web Server, Machine)에서 수행
Client Side vs. Server Side 웹 프로그래밍 기술 요약 Client Side HTTP 서버 웹 브라우저 HTML 요청 HTML & Client Script 실행!! HTML 응답 컴파일 Server Side HTTP 서버 웹 브라우저 서버 페이지 요청 (JSP, ASP, PHP) 실행!! HTML & Client Script 서버 페이지 결과 (JSP, ASP, PHP) 컴파일
Client Side Technology 웹 프로그래밍 기술 요약 ActiveX Created by C++ or VB <OBJECT> tag를 통해 사용 MS에서 만들어졌으며, Netscape에서는 지원 안됨 Java Applet <Applet> tag를 통해 사용 사용자에 의해(사용자의 PC에서) 바이트코드로 변환 이러한 바이트코드는 Java Enabled Browser에서 번역 (VM 상에서 구동) JavaScript Client Side의 대표적 스크립트언어 (IE 3.0 이상에서 작동) Web Browser에서 소스를 Interpret하여 실행 자바와 닮긴 했지만 별개
Server Side Technology 웹 프로그래밍 기술 요약 ASP (Active Server Page) Platform Dependent (Windows Environment) IIS4.0이 배급되면서 더욱 발전하였으며, VB의 많은 부분을 웹에서 사용가능 Java Servlet 동적 Web Page 구현을 위한 CGI를 자바로 구현 (Platform Independent) Web Browser의 Applet과 서버와의 통신을 위한 인터페이스로 주로 사용 JSP (Java Server Page) 자바코드 속에 HTML을 넣는 Java Servlet의 한계 극복 HTML안에 자바 코드 삽입 PHP (Personal Home Page Tools) Linux(or UNIX) 환경에 적합하며, C/C++ User의 접근이 용이함 성능면에서 가장 우수한 것으로 알려짐
PHP 언어 소개 (1/2) PHP 개요 및 설치 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 2004년 PHP Version 5 PHP는 배우고 프로그래밍 하기 쉬운 언어이다. 많은 수의 함수 및 라이브러리를 포함 C, Perl, Java 언어의 문법과 비슷함
PHP 언어 소개 (2/2) 전 세계적으로 많은 사람들이 PHP를 사용하고 있다. Informix, MS-SQL, mSQL, MySQL, Oracle, Sybase PHP는 다양한 컴퓨터 상에서 동작된다. Windows, Unix, Linux 등 거의 모든 기종의 컴퓨터에서 동작 가능 PHP는 다양한 라이브러리를 제공한다. PDF, XML, 세션, 정규표현식, SNMP, IMAP, COM 등에 대한 라이브러리 지원
서버에서 수행되는 PHP (1/2) 인터넷 HTML 요청: 클라이언트에서 수행됨 www.kangwon.ac.kr 서버 컴퓨터 abc.html 인터넷 http://www.kangwon.ac.kr/abc.html
서버에서 수행되는 PHP (2/2) 인터넷 PHP 요청: 서버에서 수행되어 클라이언트에는 결과 전달 www.kangwon.ac.kr 서버 컴퓨터 스크립트 엔진 파일시스템 abc.php DB HTML request 웹서버 인터넷 http://www.kangwon.ac.kr/abc.php
예제로 본 HTML과 PHP의 차이 (1/12) HTML로 구현한 “과일 쇼핑몰” 예제 (HTML main source) <body> 원하는 가격을 누르시오.<br> <form name=fruit30 action=“./fruit300.html”> <input type=submit value=“300원 이하”> </form> <form name=fruit60 action=“./fruit600.html”> <input type=submit value=“600원 이하”> <form name=fruit90 action=“./fruit900.html”> <input type=submit value=“900원 이하”> </body> </html>
예제로 본 HTML과 PHP의 차이 (2/12) HTML로 구현한 “과일 쇼핑몰” 예제 (HTML main result)
예제로 본 HTML과 PHP의 차이 (3/12) PHP 개요 및 설치 HTML로 구현한 “과일 쇼핑몰” 예제 (HTML sub-menu(30원) source) <html> <body> 가격이 300원 이하인 과일의 목록입니다.<br> <table border=1> <tr><th>이름</th><th>가격</th></tr> <tr><td>사과</td><td>100</td></tr> <tr><td>배</td><td>200</td></tr> <tr><td>복숭아</td><tr>300</td></tr> </table> </body> </html>
예제로 본 HTML과 PHP의 차이 (4/12) PHP 개요 및 설치 HTML로 구현한 “과일 쇼핑몰” 예제 (HTML sub-menu(300원) result)
예제로 본 HTML과 PHP의 차이 (5/12) PHP 개요 및 설치 HTML로 구현한 “과일 쇼핑몰” 예제 (HTML sub-menu(600원) source) <html> <body> 가격이 600원 이하인 과일의 목록입니다.<br> <table border=1> <tr><th>이름</th><th>가격</th></tr> <tr><td>사과</td><td>100</td></tr> <tr><td>배</td><td>020</td></tr> <tr><td>복숭아</td><td>300</td></tr> <tr><td>수박</td><td>400</td></tr> <tr><td>감</td><td>050</td></tr> <tr><td>토마토</td><td>600</td></tr> </table> </body> </html>
예제로 본 HTML과 PHP의 차이 (6/12) PHP 개요 및 설치 HTML로 구현한 “과일 쇼핑몰” 예제 (HTML sub-menu(600원) result)
예제로 본 HTML과 PHP의 차이 (7/12) PHP 개요 및 설치 HTML로 구현한 “과일 쇼핑몰” 예제 (HTML sub-menu(900원) source) <html> <body> 가격이 90원 이하인 과일의 목록입니다.<br> <table border=1> <tr><th>이름</th><th>가격</th></tr> <tr><td>사과</td><td>100</td></tr> <tr><td>배</td><td>200</td></tr> <tr><td>복숭아</td><td>300</td></tr> <tr><td>수박</td><td>040</td></tr> <tr><td>감</td><td>050</td></tr> <tr><td>토마토</td><td>600</td></tr> <tr><td>바나나</td><td>700</td></tr> <tr><td>키위</td><td>800</td></tr> <tr><td>파인애플</td><td>900</td></tr> </table> </body> </html>
예제로 본 HTML과 PHP의 차이 (8/12) PHP 개요 및 설치 HTML로 구현한 “과일 쇼핑몰” 예제 (HTML sub-menu(900원) result)
예제로 본 HTML과 PHP의 차이 (9/12) PHP로 구현한 “과일 쇼핑몰” 예제 (PHP main source) <body> <form name=fruit method=post action=“./fruit2.php”> 원하는 가격을 입력 하십시요.<br> 가격 : <input type=text name=low><br> <input type=submit value=“찾기”> </form> </body> </html>
예제로 본 HTML과 PHP의 차이 (10/12) PHP로 구현한 “과일 쇼핑몰” 예제 (PHP main result)
예제로 본 HTML과 PHP의 차이 (11/12) PHP 개요 및 설치 PHP로 구현한 “과일 쇼핑몰” 예제 (PHP dynamic page source) <?PHP $fruit = array (“사과” => 100, “배” => 200, “복숭아” => 300, “수박” => 400, “감” => 500, “토마토” => 600, “바나나” => 700, “키위” => 800, “파인애플” => 900, “대추” => 1000); $low = $_POST["low"]; // $_GET[”변수명”]; 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>”; ?>
예제로 본 HTML과 PHP의 차이 (12/12) PHP 개요 및 설치 PHP로 구현한 “과일 쇼핑몰” 예제 (PHP dynamic page result)
APM 설치 요약 APM(Apache+PHP+MySQL)을 설치한다. 관련 사이트 http://www.apmsetup.com http://kldp.net/projects/apmsetup/download http://dev.naver.com/projects/apmsetup/download
APM Setup 페이지 (www.apmsetup.com) PHP 개요 및 설치
APM Setup 다운로드 PHP 개요 및 설치
APM Setup 절차 (1/5) PHP 개요 및 설치
APM Setup 절차 (2/5) PHP 개요 및 설치
APM Setup 절차 (3/5) PHP 개요 및 설치
APM Setup 절차 (4/5) PHP 개요 및 설치
APM Setup 절차 (5/5) PHP 개요 및 설치
APM 디렉토리 살펴보기 (1/3) PHP 개요 및 설치
APM 디렉토리 살펴보기 (2/3) PHP 개요 및 설치
APM 디렉토리 살펴보기 (3/3) PHP 개요 및 설치
APM Setup 환경 설정 (1/2) PHP 개요 및 설치
APM Setup 환경 설정 (2/2) PHP 개요 및 설치
MySQL 패스워드 변경 PHP 개요 및 설치 초기 비밀번호는 “apmsetup”
APM 설치 확인 (1/2) 메모장을 열어 다음과 같이 간단한 형식의 PHP 파일 (test.php)을 작성한다. <? Phpinfo(); ?> 위에서 지정한 “C:/APM_Setup/htdocs”에 PHP파일을 저장한다. 웹 브라우저에서 http://127.0.0.1/test.php를 입력하여 PHP 버전 등의 정보가 정상적으로 출력되면 바르게 설치된 것이다.
APM 설치 확인 (2/2) APM Setup 메뉴에서 “MYSQL 관리”을 수행하여 확인한다. 기본 아이디는 “root” PHP 개요 및 설치 APM Setup 메뉴에서 “MYSQL 관리”을 수행하여 확인한다. 기본 아이디는 “root” 초기 비밀번호는 “apmsetup”
Homework #7 (실습 #6) PHP 개요 및 설치