목차 일부
Part 1. PHP 실습 환경 만들기
1장 웹 프로그램의 이해 ... 25
1.1 인터넷, 서버와 클라이언트 ... 26
인터넷의 이해 ... 26
서버와 클라이언트 ... 29
1.2 웹 프로그램 ... 31
웹 프로그램과 CGI ... 31
웹 디자이너와 웹 프로그래머...
더보기
목차 전체
Part 1. PHP 실습 환경 만들기
1장 웹 프로그램의 이해 ... 25
1.1 인터넷, 서버와 클라이언트 ... 26
인터넷의 이해 ... 26
서버와 클라이언트 ... 29
1.2 웹 프로그램 ... 31
웹 프로그램과 CGI ... 31
웹 디자이너와 웹 프로그래머 ... 33
1.3 PHP란? ... 34
PHP의 소개 ... 34
PHP와 HTML, 그리고 Javascript ... 35
2장 웹 서버 환경 만들기 ... 37
2.1 APM이란? ... 38
Apache ... 38
MySQL ... 39
APM 연동의 이해 ... 41
2.2 APM의 설치 ... 43
APM 쉽게 설치하기 ... 43
APM 설정 변경 ... 51
APM 실행 테스트 ... 58
Part 2. PHP 기본기 익히기
3장 PHP 기본 문법 ... 67
3.1 PHP 프로그램 작성 준비 ... 68
PHP 프로그램 작성도구 ... 68
PHP의 확장자 ... 69
필자의 잔소리 ... 71
3.2 PHP의 선언 ... 72
PHP의 선언 ... 72
PHP에서의 출력문 ... 76
3.3 PHP에서의 HTML 사용 ... 83
HTML 소스 삽입 방법 ... 83
4장 변수와 상수 ... 87
4.1 변수 ... 88
변수란? ... 88
정수형 변수 ... 91
실수형 변수 ... 91
문자형 변수 ... 92
변수형의 변환 ... 93
가변 변수 ... 97
변수의 연결과 구분 ... 98
4.2 상수 ... 104
상수란? ... 104
상수의 종류 ... 104
상수의 정의 ... 106
4.3 환경변수 ... 108
Apache 환경변수 ... 108
PHP 환경변수 ... 111
5장 함수 ... 115
5.1 함수란? ... 116
함수의 뜻 ... 116
PHP에서의 함수 ... 116
5.2 함수 정의하기 ... 121
함수 정의의 목적 ... 121
정의된 함수 확인하기 ... 122
함수 정의하기 ... 123
5.3 전역변수와 지역변수 ... 128
전역변수와 지역변수 ... 128
전역변수 만들기 ... 131
5.4 Static 변수 ... 133
5.5 함수의 에러 메시지 숨기기 ... 138
의 사용 ... 138
or (또는
) ... 140
6장 〈form〉 태그의 활용 ... 141
6.1 〈form〉 태그의 기본 문법 ... 142
〈form〉 태그 ... 142
〈input〉 태그 ... 146
text ... 146
password ... 119
checkbox ... 150
radio ... 151
hidden ... 152
button ... 152
submit ... 154
image ... 157
reset ... 158
〈input〉 태그 종합 예제 ... 159
〈select〉 태그 ... 164
〈textarea〉 태그 ... 167
6.2 get과 post ... 169
get과 post 방식의 특징 ... 169
get과 post 구분하기 ... 172
7장 꼭 알아야 할 기본기 ... 177
7.1 〈table〉 태그 테크닉 ... 178
padding 조정하기 ... 178
테이블 가로 폭 맞추기 ... 180
셀 가로폭 정리하기 ... 182
7.2 페이지 이동 방법 ... 192
header ... 192
location ... 194
〈meta〉 ... 195
Part 3. PHP 문법 익히기
8장 문자열 가공하기 ... 199
8.1 문자열 관련 함수 ... 200
문자열의 길이 (strlen) ... 200
문자열 뒤집기 (strrev) ... 201
두 개의 문자열을 비교 (strcmp) ... 202
대문자로 바꾸기 (strtoupper) ... 203
소문자로 바꾸기 (strtolower) ... 204
문자열의 공백 제거 (ltrim, chop, trim) ... 204
ASCII 코드 관련 함수 (chr, ord) ... 206
특수문자에 \ 붙이기 (addslashes) ... 208
\n을 〈br〉로 변환 (nl2br) ... 209
문자열에서 태그를 제거 (strip_tags) ... 213
문자열의 태그를 그대로 출력 (htmlspecialchars) ... 215
문자열 추출하기 (substr) ... 216
문자열 찾기 (strstr) ... 219
문자열 치환 (str_replace) ... 220
9장 연산하기 ... 223
9.1 연산자 ... 224
산술 연산자 ... 224
증감 연산자 ... 226
9.2 계산기 만들기 ... 229
계산 폼 만들기 ... 229
계산 결과 출력하기 ... 229
10장 조건문 ... 231
10.1 비교 연산 ... 232
비교 연산자 ... 232
10.2 논리 연산 ... 233
논리 연산자 ... 233
논리 연산의 우선순위 ... 235
10.3 if 문 ... 237
if ... 237
else ... 239
elseif (또는 else if) ... 240
10.4 switch ... 241
switch ... 241
10.5 입력받은 값 체크하기 ... 244
PHP로 체크하기 ... 244
javascript로 체크하기 ... 250
11장 반복문 ... 261
11.1 for 문 ... 262
for 문 ... 262
1부터 10000까지의 합 ... 263
for 속의 for ... 265
while 문 ... 268
1부터 10000까지의 합 ... 269
do while ... 270
11.2 break와 continue ... 272
break ... 272
continue ... 273
12장 include와 require ... 275
12.1 include ... 276
include의 활용 ... 276
12.2 require ... 281
include와 require의 차이점 ... 281
13장 배열 ... 283
13.1 배열의 정의 ... 285
원소 대입으로 정의하기 ... 285
array 함수로 정의하기 ... 288
이차원 배열 ... 289
연관 배열 ... 293
13.2 배열 값의 출력 ... 296
배열의 크기 (sizeof, count) ... 296
for를 이용한 배열 값 출력 ... 296
13.3 배열 관련 함수 ... 301
배열의 원소 추가 (array_unshift, array_push) ... 301
배열의 원소 삭제 (array_shift, array_pop) ... 303
배열의 원소 추출 (array_slice) ... 305
배열의 원소 치환 (array_splice) ... 307
배열 합치기 (array_merge) ... 310
연관 배열의 모든 키 이름 추출 (array_keys) ... 311
연관 배열의 모든 값 추출 (array_values) ... 312
문자열을 배열로 만들기 (explode) ... 313
배열을 문자열로 만들기 (implode) ... 315
14장 수학 ... 317
14.1 소수 ... 318
반올림 (round) ... 318
올림 (ceil) ... 319
버림 (floor) ... 319
거듭제곱 (pow) ... 320
14.2 제곱 ... 320
제곱근 (sqrt) ... 320
14.3 삼각함수 ... 321
sin, cos, tan ... 321
asin, acos, atan ... 322
14.4 최대값과 최소값 ... 323
최대 값 (max) ... 323
최소 값 (min) ... 324
14.5 기타 수학 관련 함수 ... 326
진수의 변환 (base_convert) ... 326
절대 값 (abs) ... 326
숫자의 형태 변환 (number_format) ... 327
15장 시간 ... 331
15.1 시간 관련 함수 ... 332
date ... 332
time ... 336
microtime ... 337
mktime ... 338
checkdate ... 340
15.2 시간의 계산 ... 341
특정일로부터의 날짜 ... 341
절차 ... 341
특정일까지의 날짜 ... 345
16장 난수 ... 347
16.1 난수의 발생 ... 348
rand, srand, getrandmax ... 348
mt_rand, mt_srand, mt_getrandmax ... 350
16.2 랜덤 이미지의 구현 ... 352
17장 암호화 ... 355
17.1 암호화 함수 ... 356
crypt ... 356
md5 ... 359
18장 cookie와 session ... 361
18.1 인증이란? ... 362
18.2 cookie ... 363
쿠키란? ... 363
쿠키 굽기 ... 363
쿠키 값의 체크 ... 367
쿠키 값의 삭제 ... 370
쿠키의 문제점 ... 371
18.3 쿠키 카운터 만들기 ... 372
18.4 회원 로그인 만들기 ... 375
로그인 ... 375
18.5 session ... 383
세션이란? ... 383
php.ini의 세션 관련 설정 ... 384
Session ... 384
세션의 시작 (session_start) ... 385
세션의 등록 (session_register) ... 385
세션의 삭제 (session_unregister) ... 389
세션의 폐기 (session_destroy) ... 390
18.6 세션 카운터 만들기 ... 392
19장 정규표현식 ... 395
19.1 정규표현식이란? ... 396
문자열이 포함되어 있는가? (ereg, eregi) ... 396
시작과 끝 ( ^, $ ) ... 397
문자의 반복 ( *, +, ? ) ... 399
반복 횟수의 지정 ( { } ) ... 400
문자열의 지정 ( ( ) ) ... 401
OR 연산 ( | ) ... 402
어떤 한 문자 ( . ) ... 402
사용 가능한 문자열의 지정 ( [ ] ) ... 404
사용 불가능한 문자열의 지정 ( [^] ) ... 405
특수문자의 사용 ... 406
19.2 이메일 주소와 홈페이지 주소 체크하기 ... 408
이메일 주소 체크하기 ... 408
홈페이지 주소 체크하기 ... 410
19.3 문자열 치환하기 ... 413
ereg_replace, eregi_replace ... 413
이메일 주소와 홈페이지 주소의 자동 링크 ... 414
19.4 문자열을 배열로 만들기(split) ... 416
20장 파일과 디렉토리 ... 417
20.1 퍼미션 ... 418
20.2 디렉토리 관리 ... 424
디렉토리의 생성과 삭제 ... 424
디렉토리 열기 ... 426
20.3 파일 관리 ... 429
파일 정보 꺼내기 ... 429
stat ... 429
filesize ... 431
fileatime ... 431
filemtime ... 432
fileperms ... 432
file_exists ... 433
파일 열기 ... 434
파일 읽기 ... 440
file ... 440
fgetc ... 441
fgets ... 442
fgetss ... 442
fread ... 443
파일 쓰기 ... 445
파일의 복사와 삭제 ... 447
copy ... 447
unlink ... 447
20.4 파일 카운터 만들기 ... 448
20.5 현재 접속자 수 체크하기 ... 452
20.6 파일 업로드하기 ... 461
디렉토리와 퍼미션 ... 461
PHP 설정 변경하기 ... 461
파일 업로드 로직 ... 462
파일 업로드 소스 ... 462
주의 사항 ... 467
21장 서버푸시 ... 471
21.1 서버푸시의 구현 ... 472
22장 메일 ... 475
22.1 메일 보내기 ... 476
메일 서버의 설정 ... 476
메일 헤더 ... 478
메일 보내기 (mail) ... 479
SMTP 가상 서버의 설치 ... 480
23장 이미지 다루기(GD) ... 487
23.1 GD ... 488
23.2 이미지 사이즈(GetImageSize) ... 489
23.3 이미지 만들기 ... 490
이미지 생성 ... 490
ImageCreate ... 490
ImageCreateFromGif, Jpeg, Png ... 491
ImageDestroy ... 491
이미지 출력 (ImageGif) ... 492
색의 지정 (ImageColorAllocate) ... 493
그리기 ... 495
ImageSetPixel ... 495
ImageLine ... 496
ImageRectangle ... 497
ImagePolygon ... 498
ImageArc ... 501
색칠하기 (ImageFill) ... 502
글씨 쓰기 ... 503
Imagestring ... 503
ImageTTFtext ... 504
23.4 그래프 그리기 ... 506
24장 기타 함수 ... 517
24.1 eval ... 518
24.2 exit ... 522
24.3 DNS 관련 함수 ... 523
24.4 isset, unset ... 524
24.5 쉘 명령의 실행 ... 526
Part 4. 데이터베이스
25장 mySQL ... 533
25.1 Database란? ... 534
25.2 mySQL 구조의 이해 ... 536
25.3 Query란? ... 540
26장 mySQL 사용 준비 ... 541
26.1 사용자 추가하기 ... 542
26.2 DB 추가하기 ... 545
26.3 mySQL에 접속하기 ... 548
mysql_connect ... 548
mysql_select_db ... 549
mysql_close ... 550
27장 테이블 ... 551
27.1 자료형 ... 552
문자형 ... 553
char ... 553
varchar ... 553
text ... 553
기타 ... 554
숫자형 ... 554
int ... 554
tinyint ... 555
기타 ... 555
날짜형 ... 556
열거형 ... 556
27.2 테이블의 생성과 삭제 ... 557
테이블 생성하기 ... 557
테이블 삭제하기 ... 559
제약 조건 ... 562
기본 키 (primary key) ... 562
유일한 값, 유일 키 (unique key) ... 564
NOT NULL ... 564
기본 값 (default) ... 565
auto_increment ... 566
테이블 변경하기 ... 567
추가 ... 567
삭제 ... 569
변경 ... 570
27.3 테이블의 설계 ... 571
28장 기본 쿼리문 ... 575
28.1 자료 넣기 ... 576
INSERT ... 576
DELETE ... 577
WHERE ... 578
컬럼 = '값' ... 578
컬럼 BETWEEN '값1' AND '값2' ... 579
컬럼 LIKE '%값%' ... 579
AND와 OR ... 579
다음의 WHERE 절이 무엇을 뜻하는지 생각해보자 :) ... 580
UPDATE ... 580
28.2 자료 꺼내기 ... 581
SELECT ... 581
PHP에서의 SELECT ... 583
ORDER BY ... 589
LIMIT ... 591
DISTINCT ... 593
함수 ... 594
COUNT ... 594
SUM ... 597
MAX.MIN ... 598
AVG ... 599
ROUND ... 600
기타 함수 ... 602
Part 5. 실전 웹 프로그래밍
29장 카운터 만들기 ... 605
29.1 로직 ... 606
테이블 설계 ... 607
29.2 소스 작성 ... 611
29.3 쿠키의 설정 ... 616
29.4 이미지 카운터 ... 621
30장 윈앰프 방송 정보 추출 ... 627
30.1 소스 페이지 ... 629
30.2 소켓 열기 ... 631
30.3 데이터 가공하기 ... 635
31장 메모장 만들기
31.1 테이블 설계 ... 642
31.2 페이지 설계 ... 644
write.php ... 644
write_ing.php ... 645
list.php ... 645
del.php ... 645
del_ing.php ... 646
edit.php ... 646
edit_ing.php ... 646
lib.php ... 646
31.3 소스의 작성 ... 647
lib.php (함수 라이브러리) ... 647
페이지 이동 함수 ... 647
에러 메시지 출력 함수 ... 648
write.php (글쓰기 폼) ... 649
write_ing.php (글의 저장) ... 651
list.php (글 목록) ... 656
페이지 이동 로직 ... 660
이전 페이지 그룹 이동 버튼 ... 678
다음 페이지 그룹 이동 버튼 ... 678
번호 붙이기 ... 682
del.php(삭제) ... 686
edit.php(수정) ... 694
31.4 검색 ... 704
검색 폼 만들기 ... 704
검색의 실행 ... 706
검색 이후의 설정 ... 715
검색어의 강조 ... 720
31.5 다중 메모장의 구현 ... 723
32장 게시판 만들기 ... 727
32.1 메모장과 다른 점 ... 728
답변형 게시판 알고리즘 ... 728
글의 내용 보기 ... 741
32.2 테이블 설계 ... 742
32.3 페이지 설계 ... 744
32.4 소스의 작성 ... 745
write.php (글쓰기 폼) ... 745
write_ing.php (글의 저장) ... 746
list.php (글 목록) ... 750
view.php (글 내용) ... 758
reply.php (답변 쓰기 폼) ... 761
reply_ing.php (답변글의 저장) ... 763
더보기 닫기