Learning PHP, MySQL & JavaScript 한국어판 [소셜 웹 개발자를 위한 3대 핵심 기술 PHP, MySQL, 자바스크립트]
- 원서명Learning PHP, MySQL, and JavaScript: A Step-By-Step Guide to Creating Dynamic Websites (ISBN 9780596157135)
- 지은이로빈 닉슨
- 옮긴이황진호
- ISBN : 9788960772199
- 35,000원
- 2011년 08월 17일 펴냄
- 페이퍼백 | 656쪽 | 188*235mm
- 시리즈 : 웹 프로페셔널
판매처
개정판책 소개
이 책은 빠른 시일 내에 웹 서버의 구축부터 웹을 구성하는 핵심 기술인 PHP와 MySQL, 자바스크립트를 자세히 배우려는 독자를 위해서 쓰여졌다. 기술에 대한 문법과 함께 사용 예제가 있어 단시간 안에 실제로 사용할 수 있는 웹 페이지를 손쉽게 구성할 수 있다. 마지막 부분에서는 이 책에서 소개된 모든 내용을 아우르는 예제로서, 소셜 네트워크 사이트를 실제로 구축해 볼 수 있는 내용이 들어 있다. 보안에 관한 내용뿐만 아니라, 기술적인 사항도 자세히 설명하기 때문에 모든 기술을 연동해 익히는 데 확실히 도움이 된다.
[ 소개 ]
웹과 웹 2.0에 기반한 기술의 훌륭한 지침서다. 읽기 편하고 쉽게 구성되어 즐기면서 읽고, 즐기면서 배울 수 있는 책이다.
- 파스칼 보르기노 / 야후의 데이터베이스 설계자
이 책은 핵심적인 웹 애플리케이션 기술 이상을 제공한다. 잘 설명된 예제를 통해 디자인 분야 초심자에게 사용자 측과 서버 측 모두에서 안전하고 관리하기 쉬운 사이트를 만드는 방법을 알려준다.
- 앨런 솔리스 / 웹 애플리케이션 디자이너
프로그래밍 경험이 부족하더라도 HTML을 안다면, 어떻게 PHP와 MySQL, 자바스크립트를 사용하여 즉각적으로 반응하고, 데이터에 기반한 웹 사이트를 만드는지 쉽게 배울 수 있다. 『Learning PHP, MySQL & JavaScript 한국어판』은 세 가지 기술을 따로 설명한 후에, 각 기술을 조합하는 방법을 보여줄 뿐만 아니라 객체와 XHTML, 쿠키, 세션 관리 등 중요한 웹 프로그래밍의 개념도 소개한다.
이 책에서는 PHP와 MySQL 조합을 통해 동적인 데이터와 사용자 인터랙션을 아우르는 웹사이트를 구축하는 쉽고 빠른 방법을 알려준다. 리치 인터넷 애플리케이션을 생성하기 위해 자바스크립트를 추가하는 방법도 배우게 될 것이다. 또한, 책에서 기술한 요소를 바탕으로 소셜 네트워크 플랫폼 예제를 만들어보고 각자 실력을 검증해 볼 수 있는 연습문제도 제공한다.
[ 이 책에서 다루는 내용 ]
■ PHP의 필수 항목과 객체지향 프로그래밍의 이해
■ 데이터베이스 구조부터 복잡한 쿼리에 이르는 MySQL 완벽 숙달
■ HTML 폼과 특징을 통합해 PHP와 MySQL로 웹 페이지 구성
■ 자바스크립트 함수와 이벤트 처리부터 문서 객체 모델에 접근하는 방법
■ Smarty 웹 템플릿 시스템, PEAR 프로그램 저장소, 야후 사용자 인터페이스(YUI) 라이브러리 등 라이브러리와 패키지 사용법
■ Ajax 호출을 통해 동적 웹사이트를 만드는 방법
■ 파일과 이미지 업로드와 조작, 사용자 입력 검증, 애플리케이션 보호
[ 이 책의 대상 독자 ]
이 책은 효과적이고 동적인 웹 사이트를 어떻게 만드는지 배우길 원하는 독자를 대상으로 한다. 정적 웹 사이트는 만들 수 있지만 기량을 좀 더 끌어올리려는 웹 마스터나 웹 디자이너뿐만 아니라 고등학생과 대학생, 대학원생, 독학을 원하는 사람들도 손쉽게 익힐 수 있다.
사실, Ajax로 알려진 웹 2.0 기술에 뒤에 숨은 기본을 배울 준비가 된 사람이라면 누구나 PHP와 MySQL, 자바스크립트 등 세 가지 핵심 기술에 대한 기초 교육을 철저히 받을 것이다.
[ 이 책의 구성 ]
이 책의 각 장은 특별한 순서로 작성됐다. 우선, PHP, MySQL, 자바스크립트 세 가지 핵심 기술을 모두 소개한 후에 웹 개발 서버를 설치하는 것을 살펴본 다음 예제를 다룬다.
그 다음 부분에서는 PHP 프로그래밍 언어의 문법과 배열, 함수, 객체지향 프로그램의 기초를 포괄하는 기본을 배운다.
앞에서 배운 PHP를 바탕으로 MySQL 데이터베이스 시스템의 구조부터 복잡한 쿼리를 생성하는 것까지 소개한다.
그 후에 폼 등의 HTML 특징을 통합하여, 동적인 웹 페이지를 만들어기 위해 PHP와 MySQL을 조합하는 방법을 배운다. Smarty 템플릿을 사용해 웹 개발의 시간을 단축할 수 있는 방법도 살펴본다.
다음 세 개 장에서는 다양하고 유용한 함수와 쿠키와 세션뿐만 아니라 높은 수준의 보안을 유지하는 방법을 배움으로써 PHP와 MySQL 개발의 핵심적이고도 실용적인 면을 낱낱이 살펴본다.
그 다음 네 개 장에서는 간단한 함수에서 문서 오브젝트 모델(Document Object Model)에 접근하는 이벤트 처리까지 자바스크립트와 브라우저 검증과 오류 처리에 대한 기초를 배운다. 세 가지 핵심 기술의 이해를 바탕으로 보이지 않는 Ajax 호출을 만들고 웹 사이트를 매우 동적인 환경으로 만드는 방법을 살펴본다.
마지막으로 배운 내용을 모두 합쳐서 완벽히 동작하는 소셜 네트워크 웹 사이트를 구성하는 PHP 프로그램의 완전한 세트를 만든다.
책을 읽으면서 좋은 프로그래밍 습관을 키우는 데 있어서 많은 충고와 조언, 발견하기 어려운 프로그래밍 오류를 찾아내고 해결하는 데 도움을 줄 팁을 볼 수 있을 것이다. 책에서 다루는 주제에 관해 자세한 내용을 찾아 볼 수 있는 웹 사이트 링크가 많이 제공된다.
[ 소개 ]
웹과 웹 2.0에 기반한 기술의 훌륭한 지침서다. 읽기 편하고 쉽게 구성되어 즐기면서 읽고, 즐기면서 배울 수 있는 책이다.
- 파스칼 보르기노 / 야후의 데이터베이스 설계자
이 책은 핵심적인 웹 애플리케이션 기술 이상을 제공한다. 잘 설명된 예제를 통해 디자인 분야 초심자에게 사용자 측과 서버 측 모두에서 안전하고 관리하기 쉬운 사이트를 만드는 방법을 알려준다.
- 앨런 솔리스 / 웹 애플리케이션 디자이너
프로그래밍 경험이 부족하더라도 HTML을 안다면, 어떻게 PHP와 MySQL, 자바스크립트를 사용하여 즉각적으로 반응하고, 데이터에 기반한 웹 사이트를 만드는지 쉽게 배울 수 있다. 『Learning PHP, MySQL & JavaScript 한국어판』은 세 가지 기술을 따로 설명한 후에, 각 기술을 조합하는 방법을 보여줄 뿐만 아니라 객체와 XHTML, 쿠키, 세션 관리 등 중요한 웹 프로그래밍의 개념도 소개한다.
이 책에서는 PHP와 MySQL 조합을 통해 동적인 데이터와 사용자 인터랙션을 아우르는 웹사이트를 구축하는 쉽고 빠른 방법을 알려준다. 리치 인터넷 애플리케이션을 생성하기 위해 자바스크립트를 추가하는 방법도 배우게 될 것이다. 또한, 책에서 기술한 요소를 바탕으로 소셜 네트워크 플랫폼 예제를 만들어보고 각자 실력을 검증해 볼 수 있는 연습문제도 제공한다.
[ 이 책에서 다루는 내용 ]
■ PHP의 필수 항목과 객체지향 프로그래밍의 이해
■ 데이터베이스 구조부터 복잡한 쿼리에 이르는 MySQL 완벽 숙달
■ HTML 폼과 특징을 통합해 PHP와 MySQL로 웹 페이지 구성
■ 자바스크립트 함수와 이벤트 처리부터 문서 객체 모델에 접근하는 방법
■ Smarty 웹 템플릿 시스템, PEAR 프로그램 저장소, 야후 사용자 인터페이스(YUI) 라이브러리 등 라이브러리와 패키지 사용법
■ Ajax 호출을 통해 동적 웹사이트를 만드는 방법
■ 파일과 이미지 업로드와 조작, 사용자 입력 검증, 애플리케이션 보호
[ 이 책의 대상 독자 ]
이 책은 효과적이고 동적인 웹 사이트를 어떻게 만드는지 배우길 원하는 독자를 대상으로 한다. 정적 웹 사이트는 만들 수 있지만 기량을 좀 더 끌어올리려는 웹 마스터나 웹 디자이너뿐만 아니라 고등학생과 대학생, 대학원생, 독학을 원하는 사람들도 손쉽게 익힐 수 있다.
사실, Ajax로 알려진 웹 2.0 기술에 뒤에 숨은 기본을 배울 준비가 된 사람이라면 누구나 PHP와 MySQL, 자바스크립트 등 세 가지 핵심 기술에 대한 기초 교육을 철저히 받을 것이다.
[ 이 책의 구성 ]
이 책의 각 장은 특별한 순서로 작성됐다. 우선, PHP, MySQL, 자바스크립트 세 가지 핵심 기술을 모두 소개한 후에 웹 개발 서버를 설치하는 것을 살펴본 다음 예제를 다룬다.
그 다음 부분에서는 PHP 프로그래밍 언어의 문법과 배열, 함수, 객체지향 프로그램의 기초를 포괄하는 기본을 배운다.
앞에서 배운 PHP를 바탕으로 MySQL 데이터베이스 시스템의 구조부터 복잡한 쿼리를 생성하는 것까지 소개한다.
그 후에 폼 등의 HTML 특징을 통합하여, 동적인 웹 페이지를 만들어기 위해 PHP와 MySQL을 조합하는 방법을 배운다. Smarty 템플릿을 사용해 웹 개발의 시간을 단축할 수 있는 방법도 살펴본다.
다음 세 개 장에서는 다양하고 유용한 함수와 쿠키와 세션뿐만 아니라 높은 수준의 보안을 유지하는 방법을 배움으로써 PHP와 MySQL 개발의 핵심적이고도 실용적인 면을 낱낱이 살펴본다.
그 다음 네 개 장에서는 간단한 함수에서 문서 오브젝트 모델(Document Object Model)에 접근하는 이벤트 처리까지 자바스크립트와 브라우저 검증과 오류 처리에 대한 기초를 배운다. 세 가지 핵심 기술의 이해를 바탕으로 보이지 않는 Ajax 호출을 만들고 웹 사이트를 매우 동적인 환경으로 만드는 방법을 살펴본다.
마지막으로 배운 내용을 모두 합쳐서 완벽히 동작하는 소셜 네트워크 웹 사이트를 구성하는 PHP 프로그램의 완전한 세트를 만든다.
책을 읽으면서 좋은 프로그래밍 습관을 키우는 데 있어서 많은 충고와 조언, 발견하기 어려운 프로그래밍 오류를 찾아내고 해결하는 데 도움을 줄 팁을 볼 수 있을 것이다. 책에서 다루는 주제에 관해 자세한 내용을 찾아 볼 수 있는 웹 사이트 링크가 많이 제공된다.
목차
목차
- 1장 역동적인 웹 컨텐츠
- HTTP와 HTML: 버너스 리의 기본 개념
- 요청/응답 절차
- PHP, MySQL, 자바스크립트가 뛰어난 이유
- PHP
- MySQL
- 자바스크립트
- 아파치 웹 서버
- 오픈 소스
- 정리
- 자가 진단 문제
- HTTP와 HTML: 버너스 리의 기본 개념
- 2장 개발 서버 설치
- WAMP, MAMP, LAMP는 무엇인가?
- 윈도우에 WAMP 설치하기
- 설치 시 오류 해결
- 설치 후 테스트
- WAMP를 대체 가능한 방법
- 맥 OS X에 MAMP 설치하기
- 최종 수정 사항
- MAMP를 대체 가능한 방법
- 리눅스에 LAMP 설치하기
- 원격으로 접속하기
- 로그인
- FTP 사용하기
- 프로그램 편집기 사용하기
- 통합개발환경 사용하기
- 자가 진단 문제
- 3장 PHP 소개
- HTML 내부에 PHP 포함
- PHP 파서 호출
- 이 책의 예제
- PHP의 구조
- 주석
- 기본 문법
- 변수의 이해
- 연산자
- 변수 대입
- 다중 라인 명령어
- 변수 입력
- 상수
- echo와 print 명령어의 차이점
- 함수
- 변수 범위
- 자가 진단 문제
- HTML 내부에 PHP 포함
- 4장 PHP의 표현식과 흐름 제어
- 표현식
- 문자 형식과 변수
- 표현식
- 연산자
- 연산자 우선순위
- 결합성
- 관계형 연산자
- 조건문
- If 문
- else 문
- elseif 문
- switch 문
- ? 연산자
- 반복문
- while 문
- do...while 문
- for 반복문
- 반복문 빠져나가기
- continue 문
- 암묵적 형변환과 명백한 형변환
- PHP의 동적 링킹
- 동적 링킹 동작
- 자가 진단 문제
- PHP 함수
- 함수 정의
- 변수 반환
- 배열 반환
- 참조로 전달
- 전역 변수 반환
- 변수 범위 다시 살펴보기
- 파일 포함과 요구
- include문
- include once
- require와 require once
- PHP 버전 호환성
- PHP 객체
- 전문 용어
- 클래스 정의
- 객체 생성
- 객체 접근법
- 생성자
- 메소드 작성법
- 속성 선언
- 상수 선언
- PHP 5의 속성과 메소드
- 상속
- 자가 진단 문제
- 기본 접근법
- 배열의 숫자 인덱스
- 연관 배열
- array 키워드를 사용한 대입법
- foreach...as 루프
- 다차원 배열
- 배열 함수의 사용
- is array()
- count()
- sort()
- shuffle()
- explode()
- extract()
- compact()
- reset()
- end()
- 자가 진단 문제
- printf
- 자릿수 설정
- 문자열 채우기
- sprintf
- 날짜와 시간 함수
- 날짜 상수
- checkdate
- 파일 처리
- 파일이 있는지 검사
- 파일 생성
- 파일 읽기
- 파일 복사
- 파일 이동
- 파일 삭제
- 파일 갱신
- 다중 접근으로부터 파일 잠금
- 전체 파일 읽기
- 파일 업로드
- 시스템 콜
- XHTML
- XHTML의 이점
- XHTML 버전
- HTML과의 차이점
- HTML 4.01 문서 유형
- XHTML 1.0 문서 유형
- XHTML 검증
- 자가 진단 문제
- MySQL 기본
- 데이터베이스 용어 정리
- 커맨드 라인으로 MySQL 접근
- 커맨드 라인 시작하기
- 커맨드 라인 인터페이스
- MySQL 명령어
- 데이터 타입
- 인덱스
- 인덱스 생성
- MySQL 데이터베이스 쿼리하기
- 테이블 조인
- 논리 연산자 사용하기
- MySQL 함수
- phpMyAdmin으로 MySQL 접근
- 윈도우 사용자
- 맥 OS X 사용자
- 리눅스 사용자
- phpMyAdmin 사용
- 자가 진단 문제
- 데이터베이스 디자인
- 기본 키(관계형 데이터베이스의 키)
- 정규화
- 첫 번째 정규 형식
- 두 번째 정규 형식
- 세 번째 정규 형식
- 정규형을 사용하지 않는 경우
- 관계
- 일대일
- 일대다
- 다대다
- 데이터베이스와 익명성
- 트랜젝션
- 트랜잭션 저장 엔진
- BEGIN
- COMMIT
- ROLLBACK
- EXPLAIN
- 백업과 복구
- mysqldump
- 백업 파일 생성
- 백업 파일로부터 복구
- CSV 포맷으로 데이터 덤프 하기
- 백업 계획
- 자가 진단 문제
- PHP로 MySQL 데이터베이스 쿼리
- 절차
- 로그인 파일 생성
- MySQL 연결
- 실용적인 예제
- $ POST 배열
- 기록 지우기
- 폼 디스플레이
- 데이터베이스 쿼리
- 프로그램 실행
- 실용적인 MySQL
- 테이블 생성
- 테이블 묘사
- 테이블 삭제
- 데이터 추가
- 데이터 추출
- 데이터 갱신
- 데이터 지우기
- AUTO INCREMENT 사용
- 쿼리 추가 실행
- SQL 인젝션 막기
- HTML 인젝션 막기
- 자가 진단 문제
- 폼 만들기
- 제출된 데이터 추출
- 옛날 방법에 의지하는 register globals
- 기본값
- 입력 형식
- 텍스트 상자
- 텍스트 영역
- 체크상자
- 라디오 버튼
- 숨겨진 필드
- Select
- Label
- 입력 보안 처리
- 예제 프로그램
- 자가 진단 문제
- 왜 Smarty 인가?
- 설치
- 스크립트 생성
- 템플릿 생성
- 실용적인 예제
- 자가 진단 문제
- PHP에서 쿠키
- 쿠키 설정
- 쿠키 추가
- 쿠키 삭제
- HTTP 인증
- 계정 이름과 암호 저장
- 암호 보호
- 세션
- 세션 시작
- 세션 끝내기
- 세션 보안
- 자가 진단 문제
- 자바스크립트와 HTML 텍스트
- 문서 제목에 스크립트 사용
- 오래된 비표준 브라우저
- 자바스크립트 파일 포함
- 자바스크립트 오류 디버깅
- 주석
- 세미콜론
- 변수
- 문자열 변수
- 숫자형 변수
- 배열
- 연산자
- 산술 연산자
- 대입 연산자
- 비교 연산자
- 논리 연산자
- 변수 증가와 감소
- 문자열 연결
- 이스케이프 문자
- 변수 입력
- 함수
- 전역 변수
- 지역 변수
- 문서 오브젝트 모델
- 비호환 브라우저
- DOM
- 자기 진단 문제
- 표현식
- 문자 형식과 변수
- 연산자
- 연산자 우선순위
- 결합성
- 관계형 연산자
- with 문
- onError
- try...catch
- 조건문
- if 문
- switch 문
- 연산자
- 반복문
- while 루프
- do...while 루프
- for 루프
- 반복문 빠져나오기
- continue 문
- 명백한 형 변환
- 자가 진단 문제
- 자바스크립트 함수
- 함수 정의
- 값 반환
- 배열 반환
- 자바스크립트 오브젝트
- 클래스 정의
- 오브젝트 생성
- 오브젝트 접근
- prototype 키워드
- 자바스크립트 배열
- 숫자형 배열
- 연관 배열
- 다중 배열
- 배열 메소드
- 자가 진단 문제
- 자바스크립트로 사용자 입력 검증하기
- .html 문서 검증(첫 번째)
- .html 문서 검증(두 번째)
- 정규 표현식
- 메타 문자로 매칭
- 난해한 문자 매칭
- 괄호로 그룹 만들기
- 문자 클래스
- 범위 표시
- 부정(negation)
- 몇 가지 복잡한 예제
- 메타 문자 정리
- 일반 변경자
- 자바스크립트에 정규 표현식
- PHP에 정규 표현식
- Ajax는 무엇인가?
- XMLHttpRequest
- 첫 번째 Ajax 프로그램
- POST 대신 GET 사용
- XML 요청 보내기
- 자가 진단 문제
- 프레임워크 선택
- YUI
- 압축된 버전
- Ajax에 YUI 사용
- YUI의 여러 가지 사용법
- 간단한 YUI 달력
- 자가 진단 문제
- 소셜 네트워크 사이트 설계
- 제3자의 애드온에 관해
- 웹 사이트에서
- rnfunctions.php
- 함수
- rnheader.php
- rnsetup.php
- index.php
- rnsignup.php
- 계정 이름 가용성 검사
- rnsignup.php (YUI 버전)
- rncheckuser.php
- rnlogin.php
- rnprofile.php
- ‘About Me’ 텍스트 추가
- 프로파일 이미지 추가
- 이미지 처리
- 현재 프로파일 출력
- rnmembers.php
- 사용자 프로파일 보기
- 친구 추가와 삭제
- 모든 멤버 나열
- rnfriends.php
- rnmessages.php
- rnlogout.php