고급웹프로그래밍 (advanced web programming) lectures 11 & 12: php...

18
1 2005 2005중등 중등1정교사 정교사 연수 연수 문양세 문양세 컴퓨터과학과 컴퓨터과학과 강원대학교 강원대학교 자연과학대학 자연과학대학 고급 고급 웹 프로그래밍 프로그래밍 (Advanced Web Programming) (Advanced Web Programming) Lectures 11 & 12: PHP Lectures 11 & 12: PHP 개요 개요 및 설치 설치 Page 2 Advanced Web Programming by Yang-Sae Moon PHP: (Professional) Hypertext Preprocessor or Personal Home Page PHP는 웹 프로그래밍 언어이다. 서버에서 동작하는 스크립트 (script) 언어 주로 동적인 (dynamic) 웹 페이지를 구성할 때 많이 사용됨 PHP의 성능과 기능은 계속해서 향상되고 있다. • 1994Rasmus Lerdorf • 1995PHP Version 2 • 1998PHP Version 3 • 2000PHP Version 4 PHP는 배우고 프로그래밍 하기 쉬운 언어이다. 많은 수의 함수 및 라이브러리를 포함 C, Perl, Java 언어의 문법과 비슷함 PHP PHP 언어 언어 소개 소개 (1/2) (1/2) PHP 개요 및 설치

Upload: others

Post on 15-Mar-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 고급웹프로그래밍 (Advanced Web Programming) Lectures 11 & 12: PHP …cs.kangwon.ac.kr/~ysmoon/courses/2005_1.5/adv_web_prog/... · 2016-06-02 · 1 2005년중등1급정교사연수

1

20052005년년 중등중등11급급 정교사정교사 연수연수

문양세문양세

컴퓨터과학과컴퓨터과학과

강원대학교강원대학교 자연과학대학자연과학대학

고급고급 웹웹 프로그래밍프로그래밍 (Advanced Web Programming)(Advanced Web Programming)

Lectures 11 & 12: PHP Lectures 11 & 12: PHP 개요개요 및및 설치설치

Page 2Advanced Web Programming

by Yang-Sae Moon

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 언어의 문법과 비슷함

PHP PHP 언어언어 소개소개 (1/2)(1/2)PHP 개요 및 설치

Page 2: 고급웹프로그래밍 (Advanced Web Programming) Lectures 11 & 12: PHP …cs.kangwon.ac.kr/~ysmoon/courses/2005_1.5/adv_web_prog/... · 2016-06-02 · 1 2005년중등1급정교사연수

2

Page 3Advanced Web Programming

by Yang-Sae Moon

전 세계적으로 많은 사람들이 PHP를 사용하고 있다.

• 2001년 6월, 675만개 이상의 도메인에서 사용

PHP는 다양한 데이터베이스와 쉽게 연동할 수 있다.

• Informix, MS-SQL, mSQL, MySQL, Oracle, Sybase

PHP는 다양한 컴퓨터 상에서 동작된다.

• Windows, Unix, Linux 등 거의 모든 기종의 컴퓨터에서 동작 가능

PHP는 다양한 라이브러리를 제공한다.

• PDF, XML, 세션, 정규표현식, SNMP, IMAP, COM 등에 대한 라이브러리 지원

PHP PHP 언어언어 소개소개 (2/2)(2/2)PHP 개요 및 설치

Page 4Advanced Web Programming

by Yang-Sae Moon

서버에서서버에서 수행되는수행되는 PHP (1/2)PHP (1/2)PHP 개요 및 설치

abc.html

www.kangwon.ac.kr서버 컴퓨터

http://www.kangwon.ac.kr/abc.html

인터넷인터넷

HTML 요청: 클라이언트에서 수행됨

Page 3: 고급웹프로그래밍 (Advanced Web Programming) Lectures 11 & 12: PHP …cs.kangwon.ac.kr/~ysmoon/courses/2005_1.5/adv_web_prog/... · 2016-06-02 · 1 2005년중등1급정교사연수

3

Page 5Advanced Web Programming

by Yang-Sae Moon

서버에서서버에서 수행되는수행되는 PHP (2/2)PHP (2/2)PHP 개요 및 설치

PHP 요청: 서버에서 수행되어 클라이언트에는 결과 전달

인터넷인터넷

http://www.kangwon.ac.kr/abc.php

스크립트엔진

웹서버

파일시스템abc.php

DB

request

HTML

www.kangwon.ac.kr서버 컴퓨터

Page 6Advanced Web Programming

by Yang-Sae Moon

예제로예제로 본본 HTMLHTML과과 PHPPHP의의 차이차이 (1/12)(1/12)PHP 개요 및 설치

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 4: 고급웹프로그래밍 (Advanced Web Programming) Lectures 11 & 12: PHP …cs.kangwon.ac.kr/~ysmoon/courses/2005_1.5/adv_web_prog/... · 2016-06-02 · 1 2005년중등1급정교사연수

4

Page 7Advanced Web Programming

by Yang-Sae Moon

예제로예제로 본본 HTMLHTML과과 PHPPHP의의 차이차이 (2/12)(2/12)PHP 개요 및 설치

HTML로 구현한 “과일 쇼핑몰” 예제 (HTML main result)

Page 8Advanced Web Programming

by Yang-Sae Moon

예제로예제로 본본 HTMLHTML과과 PHPPHP의의 차이차이 (3/12)(3/12)PHP 개요 및 설치

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 5: 고급웹프로그래밍 (Advanced Web Programming) Lectures 11 & 12: PHP …cs.kangwon.ac.kr/~ysmoon/courses/2005_1.5/adv_web_prog/... · 2016-06-02 · 1 2005년중등1급정교사연수

5

Page 9Advanced Web Programming

by Yang-Sae Moon

예제로예제로 본본 HTMLHTML과과 PHPPHP의의 차이차이 (4/12)(4/12)PHP 개요 및 설치

HTML로 구현한 “과일 쇼핑몰” 예제 (HTML sub-menu(30원) result)

Page 10Advanced Web Programming

by Yang-Sae Moon

예제로예제로 본본 HTMLHTML과과 PHPPHP의의 차이차이 (5/12)(5/12)PHP 개요 및 설치

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 6: 고급웹프로그래밍 (Advanced Web Programming) Lectures 11 & 12: PHP …cs.kangwon.ac.kr/~ysmoon/courses/2005_1.5/adv_web_prog/... · 2016-06-02 · 1 2005년중등1급정교사연수

6

Page 11Advanced Web Programming

by Yang-Sae Moon

예제로예제로 본본 HTMLHTML과과 PHPPHP의의 차이차이 (6/12)(6/12)PHP 개요 및 설치

HTML로 구현한 “과일 쇼핑몰” 예제 (HTML sub-menu(60원) result)

Page 12Advanced Web Programming

by Yang-Sae Moon

예제로예제로 본본 HTMLHTML과과 PHPPHP의의 차이차이 (7/12)(7/12)PHP 개요 및 설치

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 7: 고급웹프로그래밍 (Advanced Web Programming) Lectures 11 & 12: PHP …cs.kangwon.ac.kr/~ysmoon/courses/2005_1.5/adv_web_prog/... · 2016-06-02 · 1 2005년중등1급정교사연수

7

Page 13Advanced Web Programming

by Yang-Sae Moon

예제로예제로 본본 HTMLHTML과과 PHPPHP의의 차이차이 (8/12)(8/12)PHP 개요 및 설치

HTML로 구현한 “과일 쇼핑몰” 예제 (HTML sub-menu(90원) result)

Page 14Advanced Web Programming

by Yang-Sae Moon

예제로예제로 본본 HTMLHTML과과 PHPPHP의의 차이차이 (9/12)(9/12)PHP 개요 및 설치

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 8: 고급웹프로그래밍 (Advanced Web Programming) Lectures 11 & 12: PHP …cs.kangwon.ac.kr/~ysmoon/courses/2005_1.5/adv_web_prog/... · 2016-06-02 · 1 2005년중등1급정교사연수

8

Page 15Advanced Web Programming

by Yang-Sae Moon

예제로예제로 본본 HTMLHTML과과 PHPPHP의의 차이차이 (10/12)(10/12)PHP 개요 및 설치

PHP로 구현한 “과일 쇼핑몰” 예제 (PHP main result)

Page 16Advanced Web Programming

by Yang-Sae Moon

예제로예제로 본본 HTMLHTML과과 PHPPHP의의 차이차이 (11/12)(11/12)PHP 개요 및 설치

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 9: 고급웹프로그래밍 (Advanced Web Programming) Lectures 11 & 12: PHP …cs.kangwon.ac.kr/~ysmoon/courses/2005_1.5/adv_web_prog/... · 2016-06-02 · 1 2005년중등1급정교사연수

9

Page 17Advanced Web Programming

by Yang-Sae Moon

예제로예제로 본본 HTMLHTML과과 PHPPHP의의 차이차이 (12/12)(12/12)PHP 개요 및 설치

PHP로 구현한 “과일 쇼핑몰” 예제 (PHP dynamic page result)

Page 18Advanced Web Programming

by Yang-Sae Moon

APM(Apache+PHP+MySQL)을 설치한다.

관련 사이트: http://www.apmsetup.com

Windows 환경, Linux 환경, UNIX 환경 중 자신이 손쉽게 사용할 수 있는

환경을 택하여 APM을 설치한다.

APM APM 설치설치 요약요약PHP 개요 및 설치

Page 10: 고급웹프로그래밍 (Advanced Web Programming) Lectures 11 & 12: PHP …cs.kangwon.ac.kr/~ysmoon/courses/2005_1.5/adv_web_prog/... · 2016-06-02 · 1 2005년중등1급정교사연수

10

Page 19Advanced Web Programming

by Yang-Sae Moon

APM Setup APM Setup 페이지페이지 ((www.apmsetup.comwww.apmsetup.com))PHP 개요 및 설치

Page 20Advanced Web Programming

by Yang-Sae Moon

APM Setup APM Setup 다운로드다운로드PHP 개요 및 설치

Page 11: 고급웹프로그래밍 (Advanced Web Programming) Lectures 11 & 12: PHP …cs.kangwon.ac.kr/~ysmoon/courses/2005_1.5/adv_web_prog/... · 2016-06-02 · 1 2005년중등1급정교사연수

11

Page 21Advanced Web Programming

by Yang-Sae Moon

APM Setup APM Setup 절차절차 (1/5)(1/5)PHP 개요 및 설치

Page 22Advanced Web Programming

by Yang-Sae Moon

APM Setup APM Setup 절차절차 (2/5)(2/5)PHP 개요 및 설치

Page 12: 고급웹프로그래밍 (Advanced Web Programming) Lectures 11 & 12: PHP …cs.kangwon.ac.kr/~ysmoon/courses/2005_1.5/adv_web_prog/... · 2016-06-02 · 1 2005년중등1급정교사연수

12

Page 23Advanced Web Programming

by Yang-Sae Moon

APM Setup APM Setup 절차절차 (3/5)(3/5)PHP 개요 및 설치

Page 24Advanced Web Programming

by Yang-Sae Moon

APM Setup APM Setup 절차절차 (4/5)(4/5)PHP 개요 및 설치

Page 13: 고급웹프로그래밍 (Advanced Web Programming) Lectures 11 & 12: PHP …cs.kangwon.ac.kr/~ysmoon/courses/2005_1.5/adv_web_prog/... · 2016-06-02 · 1 2005년중등1급정교사연수

13

Page 25Advanced Web Programming

by Yang-Sae Moon

APM Setup APM Setup 절차절차 (5/5)(5/5)PHP 개요 및 설치

Page 26Advanced Web Programming

by Yang-Sae Moon

APM APM 디렉토리디렉토리 살펴보기살펴보기 (1/3)(1/3)PHP 개요 및 설치

Page 14: 고급웹프로그래밍 (Advanced Web Programming) Lectures 11 & 12: PHP …cs.kangwon.ac.kr/~ysmoon/courses/2005_1.5/adv_web_prog/... · 2016-06-02 · 1 2005년중등1급정교사연수

14

Page 27Advanced Web Programming

by Yang-Sae Moon

APM APM 디렉토리디렉토리 살펴보기살펴보기 (2/3)(2/3)PHP 개요 및 설치

Page 28Advanced Web Programming

by Yang-Sae Moon

APM APM 디렉토리디렉토리 살펴보기살펴보기 (3/3)(3/3)PHP 개요 및 설치

Page 15: 고급웹프로그래밍 (Advanced Web Programming) Lectures 11 & 12: PHP …cs.kangwon.ac.kr/~ysmoon/courses/2005_1.5/adv_web_prog/... · 2016-06-02 · 1 2005년중등1급정교사연수

15

Page 29Advanced Web Programming

by Yang-Sae Moon

APM Setup APM Setup 환경환경 설정설정 (1/4)(1/4)PHP 개요 및 설치

Page 30Advanced Web Programming

by Yang-Sae Moon

APM Setup APM Setup 환경환경 설정설정 (2/4)(2/4)PHP 개요 및 설치

Page 16: 고급웹프로그래밍 (Advanced Web Programming) Lectures 11 & 12: PHP …cs.kangwon.ac.kr/~ysmoon/courses/2005_1.5/adv_web_prog/... · 2016-06-02 · 1 2005년중등1급정교사연수

16

Page 31Advanced Web Programming

by Yang-Sae Moon

APM Setup APM Setup 환경환경 설정설정 (3/4)(3/4)PHP 개요 및 설치

Page 32Advanced Web Programming

by Yang-Sae Moon

APM Setup APM Setup 환경환경 설정설정 (4/4)(4/4)PHP 개요 및 설치

Page 17: 고급웹프로그래밍 (Advanced Web Programming) Lectures 11 & 12: PHP …cs.kangwon.ac.kr/~ysmoon/courses/2005_1.5/adv_web_prog/... · 2016-06-02 · 1 2005년중등1급정교사연수

17

Page 33Advanced Web Programming

by Yang-Sae Moon

메모장을 열어 다음과 같이 간단한 형식의 PHP 파일(test.php)을 작성한다.<? Phpinfo(); ?>

웹 브라우저에서 http://localhost/test.php를 입력하여 PHP 버전 등의 정보가 정

상적으로 출력되면 바르게 설치된 것이다.

APM APM 설치설치 확인확인 (1/2)(1/2)PHP 개요 및 설치

Page 34Advanced Web Programming

by Yang-Sae Moon

APM Setup 메뉴에서 phpMyAdmin을 수행하여 확인한다.

APM APM 설치설치 확인확인 (2/2)(2/2)PHP 개요 및 설치

Page 18: 고급웹프로그래밍 (Advanced Web Programming) Lectures 11 & 12: PHP …cs.kangwon.ac.kr/~ysmoon/courses/2005_1.5/adv_web_prog/... · 2016-06-02 · 1 2005년중등1급정교사연수

18

Page 35Advanced Web Programming

by Yang-Sae Moon

TipsTips

APM(Apache+PHP+MySQL) 사용 환경 구축

• Windows, Linux, UNIX 등의 환경 중에서 자신이 사용하기에 가장 적합한 환경

을 택하여 APM을 설치할 수 있다.

• APM 환경 구축은 이후 실습(과제) 수행을 위해서 필수적인 요소이다.

PHP 개요 및 설치