성공적인 웹 프로그래밍 : PHP와 MySQL (5 판)
Description
웹애플리케이션 개발을 위한 PHP와 MySQL 베스트셀
이 책에서는 PHP와 MySQL을 같이 사용해서 유용하고 안전한 웹 애플리케이션을 구현하는 방법을 알려줍니다. 또한, PHP 언어의 기초를 탄탄하게 다져주고, MySQL을 설정하고 사용하는 방법을 설명합니다. 그리고 PHP를 사용해서 데이터베이스 및 웹 서버와 연동하는 방법을 알려줍니다.

또한, 실무 애플리케이션에 도움이 될 수 있는 내용을 배울 수 있도록 다양한 실습 예제와 프로젝트를 제공합니다. 더불어 실제 웹 사이트 구축에 관련되는 보안과 인증의 중요한 관점을 다루면서, PHP와 MySQL로 그것을 구현하는 방법을 알려줍니다. 그리고 자바스크립트와 jQuery/Ajax를 사용해서 클라이언트와 서버 애플리케이션을 연동하는 방법을 가르쳐줍니다.

이번 5판은 PHP 5.6과 7 버전에 맞춰 업데이트되었으며 새로운 내용도 많이 추가되었습니다.
저자

루크웰링,로라톰슨

현재프리랜서로,데이터베이스/모바일시스템컨설팅과강의를하고있다.또한,20년넘게데이터베이스와객체지향시스템설계및개발프로젝트와건설/금융분야애플리케이션개발등에참여했다.새로운테크놀로지와다양한프로그래밍언어를사용해서실무에활용하고가르치는것을좋아한다.저서로는《핵심만골라배우는코틀린프로그래밍》이있으며,번역서로는《카프카핵심가이드》,《핵심만골라배우는안드로이드스튜디오3&프로그래밍》,《실무에적용하는안드로이드프로그래밍(제2판)》,《LearnAndroidStudio》,《SQLite마스터북(제2판)》,《프로오브젝티브-C디자인패턴》,《세븐데이터베이스:만들면서파악하는NoSQL》,《UML사용자지침서》,《ThinkinginJAVA4/e》,《이펙티브자바》등이있다.

목차

1부.PHP사용하기

1장.PHP훑어보기
-PHP사용에관해서
-예제애플리케이션:Bob’sAutoParts
-HTML에PHP추가하기
-동적으로콘텐트추가하기
-폼변수사용하기
-식별자이해하기
-변수타입
-상수의선언과사용
-변수범위이해하기
-연산자사용하기
-폼의주문금액합계하기
-우선순위와결합규칙
-변수처리함수사용하기
-조건문사용하기
-반복처리하기
-제어구조나스크립트의실행을중단시키기
-다른형태의제어구조문법사용하기
-declare사용하기

2장.데이터저장하고가져오기
-데이터저장하기
-Bob의주문데이터를저장하고가져오기
-파일처리하기
-파일열기
-파일쓰기
-파일닫기
-파일에서데이터읽기
-기타유용한파일함수
-파일에락걸기
-더좋은방법:데이터베이스

3장.배열사용하기
-배열이란?
-숫자인덱스배열
-다른형태의인덱스를갖는배열
-배열연산자
-다차원배열
-배열정렬하기
-다차원배열정렬하기
-다른형태의배열정렬하기
-파일에서배열로로드하기
-기타배열처리함수

4장.문자열처리와정규표현식
-샘플애플리케이션생성하기:SmartFormMail
-문자열처리하기
-문자열함수를사용해서문자열을결합하고분리하기
-문자열비교하기
-부분문자열의일치검사및변경
-정규표현식개요
-정규표현식함수로부분문자열찾기
-정규표현식함수로부분문자열변경하기
-정규표현식함수로문자열분리하기

5장.코드재사용과함수작성
-코드재사용의장점
-require()와include()사용하기
-PHP에서함수사용하기
-사용자함수정의하기
-함수의기본구조
-매개변수사용하기
-범위이해하기
-참조로전달과값으로전달
-return키워드사용하기
-재귀함수구현하기

6장.객체지향PHP
-객체지향개념이해하기
-PHP로클래스,속성,오퍼레이션생성하기
-클래스인스턴스생성하기
-클래스속성사용하기
-클래스오퍼레이션호출하기
-private과public으로접근제어하기
-접근자함수작성하기
-PHP로상속구현하기
-트레이트사용하기
-클래스설계하기
-클래스의코드작성하기
-PHP의고급객체지향기능이해하기

7장.에러와예외처리
-예외처리개념
-Exception클래스
-사용자정의예외
-Bob’sAutoParts의예외처리
-예외와그외의PHP에러처리메커니즘



2부.MySQL사용하기

8장.웹데이터베이스설계하기
-관계형데이터베이스개념
-웹데이터베이스설계하기
-웹데이터베이스구조

9장.웹데이터베이스만들기
-MySQL모니터사용하기
-MySQL서버에로그인하기
-사용자와데이터베이스생성하기
-사용자와권한설정
-MySQL의권한시스템
-웹사용자설정하기
-올바른데이터베이스사용하기
-데이터베이스테이블생성하기
-MySQL식별자이해하기
-열의데이터타입선택하기

10장.MySQL데이터베이스사용하기
-SQL이란?
-데이터베이스에데이터추가하기
-데이터베이스에서데이터가져오기
-데이터베이스의데이터변경하기
-이미생성된테이블의구조변경하기
-데이터베이스의데이터삭제하기
-테이블삭제하기
-데이터베이스전체삭제하기

11장.웹에서PHP로MySQL데이터베이스사용하기
-웹데이터베이스는어떻게동작하는가?
-웹에서데이터베이스쿼리하기
-데이터베이스에데이터추가하기
-다른PHP-데이터베이스인터페이스

12장.MySQL데이터베이스관리
-권한시스템을자세히이해하기
-MySQL데이터베이스안전하게만들기
-데이터베이스에관한더많은정보얻기
-데이터베이스최적화하기
-MySQL데이터베이스백업하기
-MySQL데이터베이스복구하기
-복제구현하기

13장.고급MySQL프로그래밍
-LOADDATAINFILE명령
-저장엔진
-트랜잭션
-외부키
-저장프로시저
-트리거



3부.웹애플리케이션보안

14장.웹애플리케이션보안위험
-직면한위협을식별하기
-대응하는상대방이해하기

15장.안전한웹애플리케이션개발하기
-보안처리전략
-코드보호하기
-웹서버와PHP보호하기
-데이터베이스서버보안
-네트워크보호하기
-컴퓨터와운영체제보안
-재난대책수립

16장.PHP로인증방법구현하기
-방문자식별하기
-접근제어구현하기
-HTTP기본인증사용하기
-PHP에서기본인증사용하기
-아파치의.htaccess파일로기본인증사용하기
-커스텀인증생성하기



4부.고급PHP기술

17장.파일시스템및서버와연동하기
-파일업로드하기
-디렉터리함수사용하기
-파일시스템과연동하기
-프로그램실행함수사용하기
-환경변수사용하기:getenv()와putenv()

18장.네트워크와프로토콜함수사용하기
-프로토콜개요
-이메일보내거나읽기
-다른웹사이트의데이터사용하기
-네트워크검색함수사용하기
-파일백업이나미러링하기

19장.날짜와시간처리하기
-PHP에서날짜와시간알아내기
-PHP와MySQL간의날짜형식변환
-PHP에서날짜계산하기
-MySQL에서날짜계산하기
-마이크로초사용하기
-캘린더함수사용하기

20장.국제화와지역화
-지역화는콘텐츠의번역만으로되는것이아니다
-문자집합이해하기
-지역화가능한페이지구조만들기
-국제화된애플리케이션에서gettext()사용하기

21장.이미지생성하기
-PHP의이미지지원설정하기
-이미지형식이해하기
-이미지생성하기

22장.PHP의세션제어사용하기
-세션제어란?
-기본적인세션기능이해하기
-간단한세션구현하기
-간단한세션예제생성하기
-세션제어구성하기
-세션제어로인증구현하기

23장.자바스크립트와PHP연동하기
-AJAX이해하기
-jQuery개요
-웹애플리케이션에서jQuery사용하기
-PHP와jQuery/AJAX연동하기

24장.기타유용한기능
-문자열을PHP코드로실행시키기:eval()
-스크립트실행끝내기:die()와exit()
-변수와객체를직렬화하기
-PHP구성정보얻기
-임시로런타임환경변경하기
-소스코드강조표시하기
-명령행에서PHP사용하기



5부.PHP와MySQL실전프로젝트구축하기

25장.대규모프로젝트에서PHP와MySQL사용하기
-웹개발에소프트웨어공학적용하기
-웹애플리케이션프로젝트의계획과실행
-코드재사용하기
-유지보수용이한코드작성하기
-버전관리적용하기
-개발환경선택하기
-프로젝트문서화하기
-프로토타입사용하기
-로직과콘텐츠를분리하기
-코드최적화하기
-코드테스트하기

26장.디버깅과로깅
-프로그래밍에러
-변수디버깅하기
-에러리포팅레벨
-에러리포팅설정변경하기
-우리의에러발생시키기
-우리의에러처리기사용하기
-에러를로그파일에수록하기

27장.사용자인증과개인화프로젝트
-솔루션구성요소
-솔루션살펴보기
-데이터베이스생성하기
-기본사이트구현하기
-사용자인증구현하기
-북마크저장하고가져오기
-북마크추천구현하기
-애플리케이션기능확장고려사항

28장.Laravel로웹기반의이메일클라이언트만들기:PartI

29장.Laravel로웹기반의이메일클라이언트만들기:PartII

30장.소셜미디어연동:공유와인증

31장.장바구니만들기


부록A.아파치,PHP,MySQL설치하기

출판사 서평

이책을읽어야하는이유

이책에서는가장간단한주문폼부터복잡하고안전한웹애플리케이션에이르기까지다양한웹시스템을만드는방법을가르쳐줄것입니다.여러분은이모든것을오픈소스기술을사용해서개발하는방법을배울수있습니다.

이책은최소한HTML의기본적인것은알고있고,프로그래밍언어하나정도는사용해본경험이있지만,웹프로그래밍이나관계형데이터베이스는사용해본경험이없는독자를대상으로합니다.이해정도는다를지라도프로그래밍을시작하는사람에게도이책은유용합니다.이책을읽는대부분의독자들은웹사이트구축을위해PHP와MySQL을확실하게배우고자할것입니다.따라서독자여러분이빠른시간내에핵심을파악할수있게책을구성하였습니다.

이책에서배울내용들

이책을읽으면실제의동적인웹애플리케이션을만들수있습니다.HTML을사용해서웹사이트를구축해본경험이있다면그것의한계를알고있을겁니다.HTML로만생성한웹사이트의정적인콘텐츠는말그대로정적일뿐입니다.따라서우리가변경하지않는한항상그대로입니다.또한사용자는사이트와상호작용이불가능합니다.

그러나PHP와같은언어와MySQL과같은데이터베이스를같이사용하면동적인사이트를만들수있습니다.즉,변경이용이하고실시간정보를포함할수있습니다.이책은실무애플리케이션개발을염두에두고집필되었습니다.따라서간단한웹애플리케이션예제부터시작해서PHP와MySQL의다양한기능을활용하는웹애플리케이션프로젝트까지두루배웁니다.

그리고이책후반부에서는실무에적용가능한다음네개프로젝트를통해서실제프로젝트의설계와구현방법을알려줍니다.

?사용자인증과개인화

?웹기반의이메일클라이언트(Laravel프레임워크사용)

?소셜미디어연동

?온라인서점과장바구니