본문 바로가기

리디 접속이 원활하지 않습니다.
강제 새로 고침(Ctrl + F5)이나 브라우저 캐시 삭제를 진행해주세요.
계속해서 문제가 발생한다면 리디 접속 테스트를 통해 원인을 파악하고 대응 방법을 안내드리겠습니다.
테스트 페이지로 이동하기

개정판 | 성공적인 웹 프로그래밍 : PHP와 MySQL 상세페이지

컴퓨터/IT 개발/프로그래밍

개정판 | 성공적인 웹 프로그래밍 : PHP와 MySQL

소장종이책 정가32,000
전자책 정가31%22,000
판매가22,000
개정판 | 성공적인 웹 프로그래밍 : PHP와 MySQL 표지 이미지

개정판 | 성공적인 웹 프로그래밍 : PHP와 MySQL작품 소개

<개정판 | 성공적인 웹 프로그래밍 : PHP와 MySQL> 웹 애플리케이션 개발을 위한 PHP와 MySQL 분야의 세계적인 베스트셀러


이 책에서는 PHP와 MySQL을 같이 사용해서 유용하고 안전한 웹 애플리케이션을 구현하는 방법을 알려줍니다. 또한, PHP 언어의 기초를 탄탄하게 다져주고, MySQL을 설정하고 사용하는 방법을 설명합니다. 그리고 PHP를 사용해서 데이터베이스 및 웹 서버와 연동하는 방법을 알려줍니다.

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

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


출판사 서평

이 책을 읽어야 하는 이유

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

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

이 책에서 배울 내용들

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

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

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

•사용자 인증과 개인화
•웹 기반의 이메일 클라이언트(Laravel 프레임워크 사용)
•소셜 미디어 연동
•온라인 서점과 장바구니



저자 소개

지은이 | 루크 웰링(Luke Welling)
루크 웰링(Luke Welling)은 소프트웨어 엔지니어이며, OSCON, ZendCon, MySQLUC, PHPCon, OSDC, LinuxTag와 같은 컨퍼런스에서 오픈 소스와 웹 개발을 주제로 정기적인 강연을 한다. 그는 OmniTI, 웹 분석 회사인 Hitwise.com, 데이터베이스 벤더인 MySQL AB, Tangled Web Design의 독립 컨설턴트로 근무하였다. 또한 호주 멜버른에 있는 RMIT 대학에서 컴퓨터 공학을 강의하였다. 그는 응용 공학(컴퓨터 공학) 학사이다. 여가 시간에는 불면증을 이겨내느라 애쓴다.

지은이 | 로라 톰슨(Laura Thomson)
로라 톰슨(Laura Thomson)은 Mozilla 사의 엔지니어링 임원이다. 로라는 이전에 OmniTI와 Tangled Web Design의 대표였으며, RMIT 대학과 보스턴 컨설팅 그룹에서 근무하였다. 그녀는 응용 공학(컴퓨터 공학) 학사이며, 우수한 성적으로 공학 학사(컴퓨터 시스템 공학) 학위를 받았다. 여가 시간에는 말을 타거나, 오픈 소스 소프트웨어에 관한 토론을 즐기며, 잠자는 것을 좋아한다.


옮긴이 | 심재철
현재 프리랜서로, 모바일/웹 시스템 관련 컨설팅과 책 집필을 하고 있다. 또한, 20여년 이상을 건설/금융 분야 애플리케이션 개발과 객체지향/웹 시스템 개발 프로젝트에 참여하였다. 대표 번역서로는 “핵심만 골라 배우는 안드로이드 스튜디오 & 프로그래밍”, “실무에 바로 적용하는 안드로이드 프로그래밍”, “SQLite 마스터북”, “이펙티브 자바”, “Thinking in Java”, “UML 사용자 지침서” 등이 있다.

목차

1부. PHP 사용하기

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

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

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

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

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

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

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



2부. MySQL 사용하기

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

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

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

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

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

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



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로 웹 기반의 이메일 클라이언트 만들기: Part I

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

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

31장. 장바구니 만들기


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


리뷰

구매자 별점

3.0

점수비율
  • 5
  • 4
  • 3
  • 2
  • 1

2명이 평가함

리뷰 작성 영역

이 책을 평가해주세요!

내가 남긴 별점 0.0

별로예요

그저 그래요

보통이에요

좋아요

최고예요

별점 취소

구매자 표시 기준은 무엇인가요?

'구매자' 표시는 리디에서 유료도서 결제 후 다운로드 하시거나 리디셀렉트 도서를 다운로드하신 경우에만 표시됩니다.

무료 도서 (프로모션 등으로 무료로 전환된 도서 포함)
'구매자'로 표시되지 않습니다.
시리즈 도서 내 무료 도서
'구매자’로 표시되지 않습니다. 하지만 같은 시리즈의 유료 도서를 결제한 뒤 리뷰를 수정하거나 재등록하면 '구매자'로 표시됩니다.
영구 삭제
도서를 영구 삭제해도 ‘구매자’ 표시는 남아있습니다.
결제 취소
‘구매자’ 표시가 자동으로 사라집니다.

이 책과 함께 구매한 책


이 책과 함께 둘러본 책



본문 끝 최상단으로 돌아가기

spinner
모바일 버전