예제로 배우는 백엔드 프로그래밍
책 소개
이 책에는 다양한 난이도의 실습 예제가 다수 수록되어 있다. 이 예제들을 실습하면서 공부하다 보면 자연스럽게 PHP와 MySQL의 동작 원리를 파악하여 스스로 웹 사이트를 제작할 수 있는 능력을 갖추는 데 초점이 맞추어져 있다. 책은 Part 1, Part 2, Part 3 세 개의 파트로 구성되어 있다. Part 1에서는 실습을 위해 XAMPP 프로그램을 설치한 다음 쉬운 실습 예제를 통하여 PHP의 기본 문법, 쿠키와 세션, 객체지향 프로그래밍 등 PHP의 기초를 익힌다. Part 2에서는 MySQL 데이터베이스 기초와 PHP에서 DB를 연동하는 API 함수의 사용법을 익히고 게시판 제작 실습을 통해 웹 페이지 제작의 기초를 배운다. 마지막으로 Part 3에서는 실제로 원격 서버에 커뮤니티형 웹 사이트 구축 실습을 통하여 자신만의 사이트를 구축할 수 있는 능력을 배양한다.
목차
Part 1. PHP 기초
Chapter 01. PHP 개요와 설치
1.1 PHP 개요
1.2 PHP 기반의 웹 환경
1.3 XAMPP 프로그램
1.3.1 XAMPP 다운로드와 설치
1.3.2 XAMPP 동작 확인
1.4 비주얼 스튜디오 코드 설치
1.5 실습 준비 및 프로그램 작성
1.5.1 작업 폴더에 실습 파일 복사하기
1.5.2 실습 폴더 열기
1.5.3 새 파일 작성하기
1.5.4 브라우저에서 실행하기
1.5.5 기존 파일 편집하고 실행하기
[연습문제]
Chapter 02. 데이터 형과 연산자
2.1 PHP 기본 문법
2.1.1 PHP의 시작과 끝
2.1.2 주석문
2.1.3 echo문
2.2 변수
2.3 프로그래밍 맛보기
2.3.1 합계/평균 구하기
2.3.2 거스름돈 계산하기
2.4 데이터 형
2.4.1 정수
2.4.2 실수
2.4.3 문자열
2.4.4 불
2.4.5 배열
2.4.6 객체
2.4.7 널
2.4.8 리소스
2.5 연산자
2.5.1 산술 연산자
2.5.2 문자열 연결 연산자
2.5.3 할당 연산자
2.5.4 비교 연산자
2.5.5 논리 연산자
[연습문제]
Chapter 03. 제어문
3.1 if문
3.1.1 if~ 구문
3.1.2 if~ else~ 문
3.1.3 if~ elseif~ else~ 구문
3.2 if문의 중첩
3.3 switch문
3.4 while문
3.4.1 while문의 기본 구조
3.4.2 while문으로 합계 구하기
3.4.3 마일/킬로미터 환산표 만들기
3.5 for 문
3.5.1 for문의 기본 구조
3.5.2 for문으로 정수 합계 구하기
3.5.3 섭씨/화씨 환산표 만들기
3.6 이중 for문
3.6.1 구구단표 만들기
3.6.2 숫자로 삼각형 형태 출력하기
3.6.3 별표(*)로 삼각형 형태 출력하기
[연습문제]
Chapter 04. 함수와 배열
4.1 함수란?
4.1.1 내장 함수
4.1.2 사용자 함수
4.1.3 프로그램 진행 순서
4.2 매개변수와 함수 값 반환
4.2.1 매개변수
4.2.2 함수 값의 반환
4.3 함수 활용
4.4 배열
4.4.1 배열이란?
4.4.2 배열로 합계 평균 구하기
4.4.3 연관 배열
4.4.4 2차원 배열
[연습문제]
Chapter 05. 내장 함수
5.1 수학 관련 함수
5.1.1 절댓값 구하기
5.1.2 올림/내림/반올림 값 구하기
5.1.3 제곱근/거듭제곱 값 구하기
5.1.4 랜덤 수 발생시키기
5.1.5 16진수 변환하기
5.2 문자열 관련 함수
5.2.1 특수 기호를 HTML 표기로 변환하기
5.2.2 HTML 표기를 특수 기호로 변환하기
5.2.3 문자열 분리하여 배열로 변환하기
5.2.4 배열 요소 합쳐서 문자열 만들기
5.2.5 특정 포맷으로 출력하기
5.2.6 특정 문자열로 변환하기
5.2.7 알파벳 대소문자 변경하기
5.2.8 특정 문자열 분리하기
5.2.9 문자열 길이 구하기
5.3 배열 관련 함수
5.3.1 배열 요소 개수 구하기
5.3.2 배열에 요소 추가하기
5.3.3 배열 요소 삭제하기
5.3.4 배열 요소 정렬하기
5.3.5 배열 합계 구하기
5.4 날짜/시간 관련 함수
5.4.1 특정 포맷으로 일시 표시하기
5.4.2 일시 테임스템프로 표시하기
5.4.3 시간 차 계산하기
5.5 파일 관련 함수
5.5.1 텍스트 파일 읽기
5.5.2 CSV 파일 읽기
5.5.3 텍스트 파일 쓰기
[연습문제]
Chapter 06. 쿠키와 세션
6.1 쿠키
6.1.1 쿠키 설정하기
6.1.2 쿠키 접근하기
6.1.3 쿠키 삭제하기
6.1.4 쿠키로 로그인 처리하기
6.1.5 쿠키로 로그아웃 처리하기
6.2 세션
6.2.1 세션 등록하기
6.2.2 세션 접근하기
6.2.3 세션 해제하기
6.2.4 세션으로 로그인 처리하기
6.2.5 세션으로 로그아웃 처리하기
[연습문제]
Chapter 07. 객체지향 프로그래밍
7.1 클래스와 객체
7.2 속성과 메소드
7.3 생성자와 소멸자
7.3.1 생성자
7.3.2 소멸자
7.4 클래스의 상속
7.5 접근 제어자
[연습문제]
Part 2. MySQL 데이터베이스
Chapter 08. MySQL 기초
8.1 DBMS와 MySQL
8.2 MySQL 서버와 phpMyAdmin
8.2.1 MySQL 서버 구동하기
8.2.2 phpMyAdmin 프로그램
8.3 데이터베이스와 사용자 계정 생성
8.3.1 데이터베이스 생성하기
8.3.2 사용자 계정 생성하기
8.3.3 사용자 계정으로 접속하기
8.4 DB 테이블 관리
8.4.1 관계형 데이터베이스와 DB 테이블
8.4.2 테이블 설계하기
8.4.3 테이블 생성하기
8.4.4 테이블 내용보기
8.4.5 테이블 구조보기
8.4.6 테이블 삭제하기
8.5 테이블에 데이터 삽입
8.5.1 명령 일괄 실행하기
8.5.2 데이터 삽입하기
8.6. 레코드 검색과 관리
8.6.1 전체 레코드 검색하기
8.6.2 특정 조 레코드 검색하기
8.6.3 특정 문자열 레코드 검색하기
8.6.4 레코드 정렬하기
8.6.5 레코드 수정하기
8.6.6 레코드 삭제하기
[연습문제]
Chapter 09. PHP와 MySQL 연동
9.1 MySQL API란?
9.2 MySQL 서버 접속하기
9.3 PHP에서 DB 테이블 생성하기
9.4 PHP에서 레코드 다루기
9.4.1 레코드 삽입하기
9.4.2 레코드 검색하기
9.4.3 레코드 정렬하기
9.4.4 레코드 수정하기
9.4.5 레코드 삭제하기
9.5 폼 데이터 PHP에 전달하기
9.5.1 POST 방식으로 전달하기
9.5.2 GET 방식으로 전달하기
[연습문제]
Chapter 10. 게시판 제작 실습
10.1 게시판 기능과 구성
10.1.1 게시판 주요 기능
10.1.2 게시판 DB 테이블 만들기
10.2 게시판 글쓰기
10.2.1 글쓰기 폼 양식
10.2.2 DB에 글 저장하기
10.3 글 목록보기
10.4 글 내용보기
10.5 글 수정하기
10.5.1 비밀번호 폼 양식
10.5.2 비밀번호 확인하기
10.5.3 글 수정 폼 양식
10.5.4 DB에서 글 수정하기
10.6 글 삭제하기
[연습문제]
Part 3. 실전! 웹 사이트 구축
Chapter 11. 회원 가입/로그인 모듈
11.1 회원가입/로그인 모듈의 구성
11.2 회원 가입
11.2.1 회원 DB 테이블
11.2.2 회원 가입 폼 양식
11.2.3 아이디 중복 체크
11.2.4 DB에 회원 정보 저장하기
11.3 로그인
11.3.1 로그인 폼 양식
11.3.2 로그인 처리하기
11.3.3 로그인 상태 판별하기
11.3.4 로그아웃 처리하기
11.4 회원 정보 수정
11.4.1 회원 정보 수정 폼 양식
11.4.2 DB에서 회원 정보 수정하기
[연습문제]
Chapter 12. 회원 게시판 모듈
12.1 회원 게시판 모듈의 구성
12.2. 회원 게시판 글쓰기
12.2.1 회원 게시판 DB 테이블
12.2.2 게시판 글쓰기 폼 양식
12.2.3 DB에 글 저장하기
12.3 글 목록보기
12.4 글 내용보기
12.4.1 글 내용보기 페이지
12.4.2 첨부 파일 다운로드 받기
12.5 글 수정하기
12.5.1 글 수정 폼 양식
12.5.2 DB에서 글 수정하기
12.6 글 삭제하기
[연습문제]
Chapter 13. 웹 사이트 제작
13.1 실습 사이트 구성
13.1.1 사이트 메인 화면
13.1.2 폴더 및 파일 구성
13.1.3 DB 테이블 생성
13.2 메인 페이지
13.2.1 메인 페이지 구성
13.2.2 상단 헤더 파일
13.2.3 메인 콘텐트 파일
13.3 회원 가입/로그인
13.3.1 회원 가입 페이지
13.3.2 DB에 회원 정보 저장하기
13.3.3 로그인 페이지
13.3.4 로그인 처리
13.3.5 로그아웃 처리
13.4 공지 게시판
13.4.1 공지 게시판 목록보기
13.4.2 공지 게시판 내용보기
13.5 QNA 게시판
13.5.1 QNA 게시판 목록보기
13.5.2 QNA 게시판 내용보기
13.6 YOUTUBE 게시판
13.6.1 YOUTUBE 게시판 목록보기
13.6.2 YOUTUBE 게시판 내용보기
[연습문제]
Chapter 14. 원격 서버 작업
14.1 도메인
14.1.1 도메인이란?
14.1.2 도메인 검색과 등록
14.2 웹 호스팅
14.2.1 웹 소스팅이란?
14.2.2 무료 웹 호스팅
14.3 FTP 프로그램
14.3.1 파일질라 설치
14.3.2 서버에 파일 업로드
14.3.3 웹 페이지 동작 확인
14.4 서버에서 데이터베이스 다루기
14.4.1 서버 phpMyAdmin 접속하기
14.4.2 DB 테이블 생성하기
14.5 웹 사이트 동작 확인하기
저자 : 황재호
경희대학교 전자공학과를 졸업하고 동 대학원에서 석ㆍ박사를 취득했다. KT 연구개발본부에서 연구원으로 근무하며 MPEG-2 비디오 코덱 시스템을 개발하였다. 저서로는 한빛 아카데미의 『PHP 프로그래밍 입문』, 『HTML/CSS for Beginner』와 한빛 미디어의 『헬로코딩 : HTML5/CSS3』와 인포앤북의 『스타트 파이썬』, 『똑똑한 파이썬』, 『파이썬 입문 with 데이터분석/시각화』, 『HTML/CSS 입문』 등 10권의 도서가 있다. 현재는 프로그래밍 서적 집필과 온라인 콘텐츠 개발에 힘쓰고 있다.