HTML5 웹 프로그래밍 입문(개정판) 부록. 웹 서버 구축하기.

Slides:



Advertisements
Similar presentations
XHTML Basic 제 13 장 1. XHTML Basic의 개요 2. XHTML Basic 기본 문법 3. 표 만들기
Advertisements

Chapter06 폼 HTML5 Programming.
CHAPTER 15. JSP.
PARK SUNGJIN Oracle 설치 PARK SUNGJIN
DB 프로그래밍 학기.
DB 프로그래밍 학기.
PHP programming 2000년 11월 13일 데이터베이스 연구실 김호숙.
Database Laboratory, Hong Ik University
인공지능실험실 석사 2학기 이희재 TCP/IP Socket Programming… 제 11장 프로세스간 통신 인공지능실험실 석사 2학기 이희재
5강. Servlet 본격적으로 살펴보기-I 프로젝트 만들기 doGet() doPost()
주)INVENTORNICS 노창배 소프트웨어 김 경 순
Network Lab. Young-Chul Hwang
JSP Programming with a Workbook
제 09 장 데이터베이스와 MySQL 학기 인터넷비즈니스과 강 환수 교수.
PHP입문 Izayoi 김조흔.
웹 서버 동작 HTTP 클라이언트가 서버와 대화하는 방법과 데이터를 서버에서 클라이언트로 전송 하는 방법을 정의한 프로토콜
6장 Mysql 명령어 한빛미디어(주).
MySQL 및 Workbench 설치 데이터 베이스.
APM (Apache+PHP+MySQL)
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
14장 질의응답 한빛미디어(주).
5장 Mysql 데이터베이스 한빛미디어(주).
forms 객체 입력상자 체크상자, 라디오 버튼 목록상자
PHP 웹 프로그래밍 (PHP Web Programming) PHP 개요 문양세 강원대학교 IT대학 컴퓨터과학전공.
4장. 웹로직 서버상에서의 JDBC와 JTA의 운용
웹서버와 설치에 필요한 것 WWW ( world wide web ) TCP/IP 프로토콜을 이용하는 클라이언트/서버 환경
3.2 SQL Server 설치 및 수행(계속) 시스템 데이터베이스 master
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
Javascript Basic Sample Programs
16장 설문조사 한빛미디어(주).
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
18강. 데이터 베이스 - II JDBC 살펴보기 Statement객체 살펴보기 Lecturer Kim Myoung-Ho
ASP.NET AJAX 비동기 게시판 작성 2007 컴퓨터공학실험( I )
KHS JDBC Programming 4 KHS
5장 Mysql 데이터베이스 한빛미디어(주).
제 01 장 인터넷 프로그래밍 개요 학기 인터넷비즈니스과 강 환수 교수.
DB연동하기 원격db접속.
PHP를 이용한 FLASH의 한계극복 지도교수님:명연수교수님 정재훈.
You YoungSEok Oracle 설치 You YoungSEok
BIZSIREN 실명확인서비스 개발 가이드 서울신용평가정보㈜ 신용조회부 (TEL , FAX )
환경 설정 예제 데이터베이스 생성 - 그림 3.34의 SQL Server 관리 스튜디오 창의 왼쪽 영역의 데이터베
Method & library.
인터넷응용프로그래밍 JavaScript(Intro).
Web Basic 김영성 인천대 OneScore
게임웹사이트운영 [10] 폼 작성.
이름 : 황 상 두 전화번호 : 이메일 : PinTool 이름 : 황 상 두 전화번호 : 이메일 :
CGI (Common Gateway Interface)
HTTP 프로토콜의 요청과 응답 동작을 이해한다. 서블릿 및 JSP 를 알아보고 역할을 이해한다.
PHP 개요 및 설치 Yang-Sae Moon Department of Computer Science
Data Base Web Programming
HTML, PHP, MySQL, Javascript
폼 관련 태그 폼 양식 직접 만들어보기 회원가입 절차 4단계
웹과 PHP를 이해하고 APM 설치 방법을 알아보자!
Ⅰ. ASP개체 모델 Ⅱ. Request 개체 그렇다면 프로그래밍 언어를 수행하는 컴퓨터의 개념적인 구조를 살펴 본다면, 프로그래밍 언어가 무엇인지 이해하는데 도움이 될 것입니다. 현재 컴퓨터 구조의 모태가 되고 있는 폰 노이만 구조는 그림에서 보는 것과 같이, 명령어와.
CGI (Common Gateway Interface)
프로그래밍 원리 Chapter 05 자바스크립트 기초 신한대학교 IT융합공학부 박 호 균.
웹디자인
01. 개요 네트워크에 있는 컴퓨터와 그룹에 대한 NetBIOS 이름에 대응되는 IP 주소를 찾아주는 서비스
문성우 SQL 실습 Part Ⅰ 문성우.
웹(WWW).
PHP 웹 프로그래밍 (PHP Web Programming) 미리 정의된 함수 문양세 강원대학교 IT대학 컴퓨터과학전공.
시스템 인터페이스 Lab#5 쉡 실습.
객체 및 객체 모델 데이터 전송 방식 Request 객체 Response 객체
~27 윤형기 Python 프로그래밍 (보충) ~27 윤형기
Chapter 5: PHP Functions and Objects
Data Base Web Programming
 6장. SQL 쿼리.
20 XMLHttpRequest.
Ⅰ. 데이터베이스 정의 Ⅱ. MS SQL 서버 Ⅲ. 데이터베이스 인터페이스
Presentation transcript:

HTML5 웹 프로그래밍 입문(개정판) 부록. 웹 서버 구축하기

목차 A.1 웹 서버 시스템 A.2 PHP 사용하기 A.3 데이터베이스 연결하기

A.1 웹 서버 시스템

웹 서버의 구축 웹 서버 컴퓨터 구축 서버 실행 프로그램 데이터베이스 시스템 웹 서버 소프트웨어 설치 및 실행 아파치(Apache) 웹 서버가 대표적 서버 실행 프로그램 HTML5 폼을 전달받아 처리 PHP, JSP, Python 등 데이터베이스 시스템 서버 측에 데이터를 저장 및 효율적 관리 MySQL, SQL, Oracle 등

웹 서버-클라이언트 연결 구조 Web Servers Web Clients 웹 서버 프로그램 Database TCP/IP HTTP Database 웹 서버 프로그램 웹 문서 HTML5, CSS JavaScript, XML PHP, Python JSP 웹 문서, 서버 프로그램 파일 전송 (ftp 등) Web Browser HTML5, CSS, JavaScript URL (주소), 폼 입력 데이터

A.2 PHP 사용하기

웹 서버 프로그래밍 언어, PHP PHP(PHP: Hypertext Preprocessor) 웹 서버 용 스크립트 언어 HTML 문서에서 <?php 와 ?> 안에 스크립트를 넣어 사용 => PHP 스크립트가 서버에서 처리 => 결과인 HTML문서만 브라우저에 보여줌 <!DOCTYPE HTML> <html> <body> <?php print "<p> Hello PHP! </p>"; ?> </body> </html> <!DOCTYPE HTML> <html> <body> <p> Hello PHP! </p>"; </body> </html>

PHP 특징 윈도우, 유닉스, 리눅스 OS에 아파치 웹 서버를 설치하여 사용 다양한 데이터베이스에 대해 사용하기 간편한 인터페이스 제공 LAMP(Linux Apache MySQL PHP) WAMP(Windows Apache MySQL PHP) <!DOCTYPE HTML> <html> <body> <h2> PHP 예제 </h2> <?php print "<p> Hello PHP! </p>"; print "<p> Welcome to HTML5 Web Programming 입문 </p>"; ?> </body> </html> <body> <h2> PHP 예제 </h2> <p> Hello PHP! </p> <p> Welcome to HTML5 Web Programming 입문 </p> </body>

PHP 시작하기: 함수, 변수 함수 변수: $변수명 <body> <p>PHP 요일 확인 예제</p> <?php $week_day = date("D"); print "<strong> Today is $week_day.. </strong><br/>"; if ($week_day == "Fri") print "[$week_day] Have a nice weekend!"; elseif ($week_day == "Sun") print "[$week_day] Have a nice Sunday!"; else print "[$week_day] Have a nice day!"; ?> </body> $week_day = “Wed” <body> <p>PHP 요일 확인 예제</p> <strong> Today is $week_day.. </strong><br/> [Wed] Have a nice day! </body>

간략한 PHP 문법 항목 설명 주석 // 혹은 /* … */ 변수 $를 붙혀 변수로 사용. $variable_name 데이터 타입 Boolean, Integer, Floating point:, 문자열: "abcdefg” 혹은 'abcdefg' 제어문, 반복문 if, switch, while, for 문 제공됨 문자열 붙이기 연산자 . 연산자 "abc"."def"  "abcdef" 함수 정의 function 함수이름 (매개변수…) { 함수 정의; return (반환값); } 폼 입력 값 $_GET, $_POST 배열로 전달 받음 배열 $arr = array(); $arr[] = "apple"; $arr[] = "grape"; $arr[] = "melon"; $arr = array("apple", "grape", "melon"); 출력 print 혹은 echo

PHP로 폼 다루기(1) <form> 에서 action, method 속성 예, <form action="formexample.php" method="GET"> 변수명은 name 속성값 GET 메소드의 경우 : $_GET["변수명"] POST 메소드의 경우 : $_POST["변수명"] <body> <p> form으로 PHP 프로그램 실행</p> <form action="formexample.php" method="GET"> 유형 선택 : <input type="radio" name="kind" value="news">구글 뉴스 <input type="radio" name="kind" value="blog">네이버 블로그 <input type="radio" name="kind" value="search">네이버 검색<br/>   키워드 입력 : <input type="text" name="keyword" size="15">=> <input type="submit" value="PHP 실행"> </form> </body> http://webclass.me/html5_2e/appendix/formexample.php?kind=search&keyword=%EB%B0%95%EC%A7%80%EC...

<p> form으로 데이터 전송 결과</p> <?php $k = $_GET["kind"]; $w = $_GET["keyword"]; ?> <p> form으로 데이터 전송 결과</p> <p> 기사 유형(kind): <?php print $k; ?> </p> <p> 키워드(keyword)는 [ <?php print $w; ?> ] 입니다.</p>   <?php if ($k=="news") $result_url = "'http://www.google.co.kr/search?tbm=nws&q=$w'"; elseif ($k=="blog") $result_url = "'http://section.blog.naver.com/sub/SearchBlog.nhn?option.keyword=$w'"; elseif ($k=="search") $result_url = "'http://search.naver.com/search.naver?query=$w'";   <script type="text/javascript"> window.open(<?php print $result_url;?>); </script> window.open('http://search.naver.com/search.naver?query=$w'");

PHP로 폼 다루기(2) <h3>도서 대출 신청 양식</h3> <form action="formexample2.php" method="GET"> 대출 도서관 선택: <label> <input type="checkbox" name="seoul">서울도서관</label> <label> <input type="checkbox" name="cheonan">천안도서관</label> <label> <input type="checkbox" name="jeju">제주도서관</label> <br><br> 대출 기간 선택: <select name="duration"> <option value="1week"> 1주 </option> <option value="2week"> 2주 </option> <option value="4week"> 4주 </option> <option value="8week"> 8주 </option> </select> <br><br> 대출 시작 날짜: <input type="date" name="date"/> <br><br> 대출 시작 시간: <input type="time" name="time"/> <br><br> 포장 색상 선택: <input type="color" name="color"/> <br><br> <input type="submit" value="신청하기"> <input type="reset" value="리셋"> </form> http://webclass.me/.../appendix/formexample2.php? seoul=on&cheonan=on&duration=4week&date=2017-04-19&time=14%3A00&color=%23ff8080

seoul=on&cheonan=on& duration=4week& date=2017-04-19& time=14%3A00& color=%23ff8080 <h3>도서 대출 신청 결과</h3> <?php $period = $_GET["duration"]; $d = $_GET["date"]; $t = $_GET["time"]; $c = $_GET["color"]; ?> 대출 요청 도서관: if ($_GET["seoul"]=="on") print "서울도서관 "; if ($_GET["cheonan"]=="on") print "천안도서관 "; if ($_GET["jeju"]=="on") print "제주도서관"; <br> 대출 요청 기간: <?php print $period;?> <br> 대출 시작 날짜: <?php print $d;?> <br> 대출 시작 시간: <?php print $t;?> <br> 포장 색상 요청: <?php print $c;?> <h3>도서 대출 신청 결과</h3> 대출 요청 도서관: 서울도서관 천안도서관 <br> 대출 요청 기간: 4week <br> 대출 시작 날짜: 2017-04-19 <br> 대출 시작 시간: 14:00 <br> 포장 색상 요청: #ff8080

A.3 데이터베이스 연결하기

SQL 문 데이터베이스를 다루기 위한 언어 query (질의) 데이터베이스 생성, 테이블 생성, 테이블에 레코드 읽기, 저장, 변경 등을 수행 query (질의) SQL 문으로 기술된 데이터베이스에 대한 요청 예, 이미 생성된 데이터베이스 테이블에 레코드 삽입 및 접근 테이블에 레코드 삽입: insert insert into 테이블이름 (필드이름1, 필드이름2, . . .) values (필드값1, 필드값2 . . . )  테이블에서 레코드 선택: select select 필드이름1, 필드이름2, . . . 혹은 * from 테이블이름 where 조건

PHP에서 MySQL 실행하기 1. MySQL 데이터베이스 연결 2. 질의(query) 요청 예, 선호도 조사 $db = new mysqli( 서버이름, 사용자계정이름, 비밀번호, DB이름); 2. 질의(query) 요청 $result = $db->query( SQL질의 ); 예, 선호도 조사 <p> 음식 선호도 조사</div> <form method="get" action="favorate_food.php"> <p> 이름을 입력해 주세요.</p> <input type="text" name="name">   <p> 좋아하는 음식을 선택해 주세요.</p> <input type="radio" name="food" value="korean">한식 <input type="radio" name="food" value="chinese">중식 <input type="radio" name="food" value="japanese">일식 <br/><br/> <input type="reset" value="초기화"/> <input type="submit" value="투표하기"/> </form>

if (mysqli_connect_errno()) { <?php $db = new mysqli("localhost", "webclass", "webclass1234", "favorate_food"); // 데이터베이스 연결 if (mysqli_connect_errno()) { print "Error: Could not connect to database server."; exit; } $name = $_GET["name"]; $food = $_GET["food"]; $q = "select * from vote where name = $name'"; $result = $db->query($q);   if ($result->num_rows > 0) { // already voted, 입력한 이름으로 이미 투표했는지 확인 print "$name has already voted!"; } else { $q = "insert into vote (name, food) values ('$name', '$food')"; // 선호도 투표 결과 저장 $db->query($q); print "$name voted for $food"; print "<p> 음식 선호도 조사 결과 </p>"; $result = $db->query("select * from vote"); print "<br/> 총 투표자 수: ".$result->num_rows; $result = $db->query("select * from vote where food = 'korean'"); print "<br/> 한식: ".$result->num_rows; // 음식별 투표 결과 출력 $result = $db->query("select * from vote where food = 'chinese'"); print "<br/> 중식: ".$result->num_rows; … } ?> id name food 정수 문자열