Dane szczegółowe książki
PHP 4: kompendium programisty / Schwendiman, Blake; Gonera, Paweł; Kowalski, Grzegorz
Tytuł
PHP 4: kompendium programisty
Tytuł oryginału
PHP 4 developer's guide
Wydawnictwo
Gliwice: "Helion", 2002
ISBN
837197521X
Hasła przedmiotowe
Informacje dodatkowe
Książka bez numeracji stron
Spis treści
pokaż spis treści
SPIS TREŚCI............................................................................................................................... 1
WSTĘP............................................................................................................................... 7
Dla kogo jest przeznaczona ta książka............................................................................................................... 7
Konwencje ............................................................................................................................... 7
Omówienie książki............................................................................................................................... 7
Od autora ............................................................................................................................... 8
Przykłady kodu ............................................................................................................................... 8
CZYM JEST PHP ............................................................................................................................... 8
DLACZEGO POWINIENEŚ UŻYĆ PHP......................................................................................................................... 9
GDZIE SZUKAĆ POMOCY ............................................................................................................................... 9
PODZIĘKOWANIA............................................................................................................................... 10
O AUTORZE ............................................................................................................................... 10
ROZDZIAŁ 1. KOMPILACJA I INSTALOWANIE PHP................................................................................ 11
WSTĘP............................................................................................................................... 11
POBIERANIE PHP............................................................................................................................... 11
INSTALOWANIE WERSJI BINARNEJ.......................................................................................................................... 11
Binarna instalacja dla Windows ...................................................................................................................... 11
Instalowanie PHP w postaci modułu ISAPI................................................................................................. 12
Użycie PHP jako CGI............................................................................................................................... 14
Inne instalacje binarne............................................................................................................................... 14
KOMPILOWANIE PHP ............................................................................................................................... 15
Kompilowanie PHP w Uniksach ...................................................................................................................... 15
Kompilacja modułu CGI .............................................................................................................................. 15
Kompilacja PHP jako statycznie dołączanego modułu Apache................................................................... 17
Kompilacja PHP do postaci dynamicznie ładowanego modułu Apache ..................................................... 17
Podsumowanie kompilacji PHP w systemach Unix .................................................................................... 18
Kompilowanie PHP w środowisku Windows ................................................................................................... 18
Podsumowanie kompilacji PHP....................................................................................................................... 20
KONFIGUROWANIE PHP............................................................................................................................... 20
Korzystanie z pliku php.ini ............................................................................................................................... 20
Inne metody zmiany konfiguracji PHP............................................................................................................. 21
PODSUMOWANIE ............................................................................................................................... 22
ROZDZIAŁ 2. JĘZYK............................................................................................................................... 23
WSTĘP............................................................................................................................... 23
OGÓLNE INFORMACJE NA TEMAT SKŁADNI............................................................................................................ 23
TYPY ............................................................................................................................... 24
Liczby — całkowite i zmiennoprzecinkowe ...................................................................................................... 24
Ciągi ............................................................................................................................... 24
Tablice............................................................................................................................... 25
ZMIENNE I STAŁE............................................................................................................................... 26
Zmienne predefiniowane ............................................................................................................................... 26
Zasięg zmiennych ............................................................................................................................... 30 Stałe............................................................................................................................... 31
OPERATORY I KOLEJNOŚĆ OPERATORÓW............................................................................................................... 31
PROGRAMOWANIE PRZEPŁYWU STEROWANIA ....................................................................................................... 32
if, else, elseif ............................................................................................................................... 32
while ............................................................................................................................... 32
do .. while ............................................................................................................................... 32
for ............................................................................................................................... 33
foreach............................................................................................................................... 33
switch............................................................................................................................... 33
break i continue............................................................................................................................... 35
include i require ............................................................................................................................... 36
FUNKCJE............................................................................................................................... 36
Klasy i programowanie obiektowe................................................................................................................... 37
PORÓWNYWANIE WZORCÓW ............................................................................................................................... 39
Podsumowanie ............................................................................................................................... 39
ROZDZIAŁ 3. FORMULARZE I COOKIE....................................................................................................... 40
WSTĘP............................................................................................................................... 40
OBSŁUGA FORMULARZY W PHP............................................................................................................................ 41
Skalarne i wielowartościowe elementy formularza.......................................................................................... 41
Alternatywne metody odczytywania wartości z formularza ............................................................................. 42
Użycie formularzy do przesyłania plików ........................................................................................................ 45
Użycie rysunku jako przycisku wysłania danych.............................................................................................. 45
KONTROLA POPRAWNOŚCI DANYCH FORMULARZA................................................................................................ 46
Kontrola danych za pomocą wyrażeń regularnych.......................................................................................... 46
Kontrola poprawności za pomocą sprawdzania typów.................................................................................... 47
Klasa Validator ............................................................................................................................... 48
COOKIE ............................................................................................................................... 49
WAŻNE ZAGADNIENIA PROGRAMOWANIA DLA WWW.......................................................................................... 50
Obsługa nieprawidłowych danych ................................................................................................................... 50
Obsługa i formatowanie wyświetlanych danych .............................................................................................. 52
PODSUMOWANIE ............................................................................................................................... 57
ROZDZIAŁ 4. OPERACJE NA PLIKACH........................................................................................................ 58
WSTĘP............................................................................................................................... 58
ODCZYT I ZAPIS PLIKÓW............................................................................................................................... 58
UŻYCIE GNIAZD............................................................................................................................... 59
UŻYCIE POTOKÓW ............................................................................................................................... 60
KLASA FILE............................................................................................................................... 61
PODSUMOWANIE ............................................................................................................................... 61
ROZDZIAŁ 5. WYSYŁANIE PLIKÓW PRZEZ FORMULARZ.................................................................... 62
WSTĘP............................................................................................................................... 62
WYSYŁANIE POJEDYNCZEGO PLIKU....................................................................................................................... 62
PUŁAPKI ............................................................................................................................... 64
PRZESYŁANIE WIELU PLIKÓW ............................................................................................................................... 64
BEZPIECZEŃSTWO ............................................................................................................................... 65
PODSUMOWANIE ............................................................................................................................... 66
ROZDZIAŁ 6. WSPÓŁPRACA Z BAZAMI DANYCH.................................................................................... 67
WSTĘP............................................................................................................................... 67
WPROWADZENIE ............................................................................................................................... 67
FUNKCJE BAZ DANYCH ............................................................................................................................... 67
MYSQL............................................................................................................................... 68 Rozpoczynamy pracę z MySQL ........................................................................................................................ 68
Użycie MySQL............................................................................................................................... 68
ODBC............................................................................................................................... 71
Podstawy ODBC ............................................................................................................................... 71
Instalowanie i kompilowanie unixODBC .................................................................................................... 72
Kompilowanie PHP z obsługą unixODBC .................................................................................................. 72
Instalowanie sterownika OOB...................................................................................................................... 72
Konfigurowanie OOB ............................................................................................................................... 72
Korzystanie z ODBC ............................................................................................................................... 73
PHPLIB ............................................................................................................................... 74
PRZECHOWYWANIE DANYCH Z FORMULARZY........................................................................................................ 75
WYKORZYSTANIE MOŻLIWOŚCI BAZY DANYCH..................................................................................................... 77
PODSUMOWANIE ............................................................................................................................... 78
ROZDZIAŁ 7. SESJE I STAN APLIKACJI....................................................................................................... 80
WSTĘP............................................................................................................................... 80
PODSTAWY MECHANIZMU SESJI............................................................................................................................. 80
WBUDOWANY W PHP MECHANIZM ZARZĄDZANIA SESJAMI .................................................................................. 81
Rozpoczęcie pracy z sesjami w PHP ................................................................................................................ 81
Przesyłanie identyfikatora sesji bez użycia cookie........................................................................................... 83
Zapisywanie zmiennych sesji w bazie danych .................................................................................................. 85
Inne funkcje i opcje dotyczące sesji.................................................................................................................. 89
UŻYCIE PHPLIB DO OBSŁUGI SESJI....................................................................................................................... 90
TWORZENIE WŁASNEGO MECHANIZMU SESJI ......................................................................................................... 92
INŻYNIERIA PROGRAMOWANIA A SESJE ................................................................................................................. 92
PODSUMOWANIE ............................................................................................................................... 94
ROZDZIAŁ 8. UWIERZYTELNIANIE.............................................................................................................. 95
WSTĘP............................................................................................................................... 95
PODSTAWOWE UWIERZYTELNIANIE W APACHE ..................................................................................................... 95
AKTUALIZACJA PLIKU .HTACCESS PRZY UŻYCIU PHP............................................................................................ 97
PODSTAWOWE UWIERZYTELNIANIE ZA POMOCĄ PHP ........................................................................................... 99
KOMPLETNY SYSTEM UWIERZYTELNIANIA OPARTY O PHP ................................................................................. 100
PODSUMOWANIE ............................................................................................................................... 104
ROZDZIAŁ 9. NIEZALEŻNOŚĆ OD PRZEGLĄDARKI............................................................................. 105
WSTĘP............................................................................................................................... 105
ROZPOCZYNAMY............................................................................................................................... 105
WEWNĘTRZNE FUNKCJE PHP.............................................................................................................................. 106
Dodatkowe informacje na temat Browscap ................................................................................................... 106
BROWSERHAWK............................................................................................................................... 109
WYKORZYSTANIE DANYCH O PRZEGLĄDARCE..................................................................................................... 113
PODSUMOWANIE ............................................................................................................................... 114
ROZDZIAŁ 10. URUCHAMIANIE................................................................................................................... 115
WSTĘP............................................................................................................................... 115
INŻYNIERIA PROGRAMOWANIA A URUCHAMIANIE ............................................................................................... 115
Projekt aplikacji ............................................................................................................................... 115
Definiowanie standardów programowania.................................................................................................... 116
Przegląd oprogramowania............................................................................................................................. 116
Testowanie............................................................................................................................... 117
Uruchamianie............................................................................................................................... 117
PROGRAMOWANIE DEFENSYWNE......................................................................................................................... 118
WŁASNA OBSŁUGA BŁĘDÓW............................................................................................................................... 122 ZAAWANSOWANA OBSŁUGA BŁĘDÓW ................................................................................................................. 125
PODSUMOWANIE ............................................................................................................................... 129
BIBLIOGRAFIA ............................................................................................................................... 130
ROZDZIAŁ 11. PONOWNE WYKORZYSTANIE KODU............................................................................ 131
WSTĘP............................................................................................................................... 131
PONOWNE WYKORZYSTANIE KODU A INŻYNIERIA PROGRAMOWANIA.................................................................. 131
PONOWNE UŻYCIE ISTNIEJĄCEGO KODU .............................................................................................................. 132
PHP............................................................................................................................... 132
C/C++............................................................................................................................... 133
Java ............................................................................................................................... 138
Dodawanie obsługi Javy w PHP na *niksach ............................................................................................ 138
Dołączanie obsługi Javy w PHP dla Windows .......................................................................................... 139
Opcje konfiguracji Javy.............................................................................................................................. 139
COM............................................................................................................................... 141
Inne metody ............................................................................................................................... 143
PODSUMOWANIE ............................................................................................................................... 144
BIBLIOGRAFIA ............................................................................................................................... 144
ROZDZIAŁ 12. ODDZIELANIE KODU HTML OD PHP............................................................................. 145
WSTĘP............................................................................................................................... 145
WPROWADZENIE ............................................................................................................................... 145
ODDZIELENIE I INTEGRACJA PRZY UŻYCIU WBUDOWANYCH FUNKCJI PHP.......................................................... 146
Motywacja ............................................................................................................................... 146
Implementacja ............................................................................................................................... 147
Czego należy unikać ............................................................................................................................... 151
Podsumowanie: Oddzielanie i integracja przy wykorzystaniu funkcji PHP.................................................. 151
WYKORZYSTANIE SYSTEMU SZABLONÓW............................................................................................................ 152
FastTemplate............................................................................................................................... 152
Zaawansowane techniki użycia FastTemplate ............................................................................................... 157
PODSUMOWANIE ............................................................................................................................... 159
BIBLIOGRAFIA ............................................................................................................................... 159
ROZDZIAŁ 13. FAJNY PHP.............................................................................................................................. 160
WSTĘP............................................................................................................................... 160
WYSYŁANIE DO PRZEGLĄDARKI PLIKÓW INNYCH NIŻ HTML.............................................................................. 160
SKRYPTY AUTOMATYZUJĄCE .............................................................................................................................. 164
WDDX............................................................................................................................... 168
MONITOROWANIE SIECI ............................................................................................................................... 172
PODSUMOWANIE ............................................................................................................................... 174
ROZDZIAŁ 14. WITRYNY OPARTE O SZABLONY................................................................................... 175
PODSTAWY WYKORZYSTANIA SZABLONÓW......................................................................................................... 175
ZAPOŻYCZANIE ............................................................................................................................... 183
PERSONALIZACJA WITRYNY............................................................................................................................... 185
OBSŁUGA WIELU JĘZYKÓW............................................................................................................................... 187
PODSUMOWANIE ............................................................................................................................... 189
ROZDZIAŁ 15. WITRYNY OPARTE O BAZĘ DANYCH............................................................................ 190
WSTĘP............................................................................................................................... 190
PROJEKT BAZY DANYCH ............................................................................................................................... 190
ZARZĄDZANIE DANYMI APLIKACJI....................................................................................................................... 192
WYŚWIETLANIE DANYCH ............................................................................................................................... 199
PODSUMOWANIE ............................................................................................................................... 204 ROZDZIAŁ 16. GENEROWANIE STATYCZNYCH STRON HTML W OPARCIU O DYNAMICZNE
DANE............................................................................................................................... 205
WSTĘP............................................................................................................................... 205
KONCEPCJA ............................................................................................................................... 205
GENEROWANIE STRON STATYCZNYCH................................................................................................................. 205
Użycie buforowania............................................................................................................................... 205
Użycie FastTemplate ............................................................................................................................... 207
TECHNIKI BUFOROWANIA............................................................................................................................... 208
PODSUMOWANIE ............................................................................................................................... 210
ROZDZIAŁ 17. WITRYNY HANDLU ELEKTRONICZNEGO................................................................... 211
WSTĘP............................................................................................................................... 211
BEZPIECZEŃSTWO ............................................................................................................................... 211
Zastosowanie SSL............................................................................................................................... 211
Certyfikaty ............................................................................................................................... 211
Bezpieczeństwo bazy danych.......................................................................................................................... 212
PRZETWARZANIE PŁATNOŚCI............................................................................................................................... 212
DOSTARCZANIE PRODUKTÓW.............................................................................................................................. 219
PODSUMOWANIE ............................................................................................................................... 220
DODATEK A. FUNKCJE............................................................................................................................... 221
DODATEK B. PREDEFINIOWANE ZMIENNE I STAŁE PHP................................................................... 367
ZMIENNE ............................................................................................................................... 367
Zmienne Apache ............................................................................................................................... 367
Zmienne środowiska............................................................................................................................... 369
Zmienne PHP ............................................................................................................................... 369
STAŁE............................................................................................................................... 370
DODATEK C. OPCJE KOMPILACJI PHP..................................................................................................... 372
BAZY DANYCH ............................................................................................................................... 372
HANDEL ELEKTRONICZNY ............................................................................................................................... 374
GRAFIKA ............................................................................................................................... 374
RÓŻNE............................................................................................................................... 375
--enable-inline-optimization........................................................................................................................... 376
SIEĆ............................................................................................................................... 379
DZIAŁANIE PHP ............................................................................................................................... 379
SERWER............................................................................................................................... 380
TEKST I JĘZYK ............................................................................................................................... 380
XML............................................................................................................................... 381
DODATEK D. OPCJE KONFIGURACJI PHP ............................................................................................... 382
OGÓLNE DYREKTYWY KONFIGURACJI ................................................................................................................. 382
DYREKTYWY KONFIGURACJI POCZTY .................................................................................................................. 385
DYREKTYWY KONFIGURACJI TRYBU BEZPIECZNEGO ........................................................................................... 385
DYREKTYWY KONFIGURACJI DEBUGGERA........................................................................................................... 385
DYREKTYWY ŁADOWANIA ROZSZERZEŃ ............................................................................................................. 385
DYREKTYWY KONFIGURACJI MYSQL................................................................................................................. 386
DYREKTYWY KONFIGURACJI MSQL.................................................................................................................... 386
DYREKTYWY KONFIGURACJI POSTGRESQL ........................................................................................................ 386
DYREKTYWY KONFIGURACJI SYBASE.................................................................................................................. 387
DYREKTYWY KONFIGURACJI SYBASE-CT ........................................................................................................... 387
DYREKTYWY KONFIGURACJI INFORMIX .............................................................................................................. 388
DYREKTYWY KONFIGURACJI BC MATH.............................................................................................................. 389 DYREKTYWY KONFIGURACJI MOŻLIWOŚCI PRZEGLĄDAREK ................................................................................ 389
DYREKTYWY KONFIGURACJI ZUNIFIKOWANEGO ODBC..................................................................................... 389
DODATEK E. ZASOBY SIECI.......................................................................................................................... 390
WSTĘP............................................................................................................................... 7
Dla kogo jest przeznaczona ta książka............................................................................................................... 7
Konwencje ............................................................................................................................... 7
Omówienie książki............................................................................................................................... 7
Od autora ............................................................................................................................... 8
Przykłady kodu ............................................................................................................................... 8
CZYM JEST PHP ............................................................................................................................... 8
DLACZEGO POWINIENEŚ UŻYĆ PHP......................................................................................................................... 9
GDZIE SZUKAĆ POMOCY ............................................................................................................................... 9
PODZIĘKOWANIA............................................................................................................................... 10
O AUTORZE ............................................................................................................................... 10
ROZDZIAŁ 1. KOMPILACJA I INSTALOWANIE PHP................................................................................ 11
WSTĘP............................................................................................................................... 11
POBIERANIE PHP............................................................................................................................... 11
INSTALOWANIE WERSJI BINARNEJ.......................................................................................................................... 11
Binarna instalacja dla Windows ...................................................................................................................... 11
Instalowanie PHP w postaci modułu ISAPI................................................................................................. 12
Użycie PHP jako CGI............................................................................................................................... 14
Inne instalacje binarne............................................................................................................................... 14
KOMPILOWANIE PHP ............................................................................................................................... 15
Kompilowanie PHP w Uniksach ...................................................................................................................... 15
Kompilacja modułu CGI .............................................................................................................................. 15
Kompilacja PHP jako statycznie dołączanego modułu Apache................................................................... 17
Kompilacja PHP do postaci dynamicznie ładowanego modułu Apache ..................................................... 17
Podsumowanie kompilacji PHP w systemach Unix .................................................................................... 18
Kompilowanie PHP w środowisku Windows ................................................................................................... 18
Podsumowanie kompilacji PHP....................................................................................................................... 20
KONFIGUROWANIE PHP............................................................................................................................... 20
Korzystanie z pliku php.ini ............................................................................................................................... 20
Inne metody zmiany konfiguracji PHP............................................................................................................. 21
PODSUMOWANIE ............................................................................................................................... 22
ROZDZIAŁ 2. JĘZYK............................................................................................................................... 23
WSTĘP............................................................................................................................... 23
OGÓLNE INFORMACJE NA TEMAT SKŁADNI............................................................................................................ 23
TYPY ............................................................................................................................... 24
Liczby — całkowite i zmiennoprzecinkowe ...................................................................................................... 24
Ciągi ............................................................................................................................... 24
Tablice............................................................................................................................... 25
ZMIENNE I STAŁE............................................................................................................................... 26
Zmienne predefiniowane ............................................................................................................................... 26
Zasięg zmiennych ............................................................................................................................... 30 Stałe............................................................................................................................... 31
OPERATORY I KOLEJNOŚĆ OPERATORÓW............................................................................................................... 31
PROGRAMOWANIE PRZEPŁYWU STEROWANIA ....................................................................................................... 32
if, else, elseif ............................................................................................................................... 32
while ............................................................................................................................... 32
do .. while ............................................................................................................................... 32
for ............................................................................................................................... 33
foreach............................................................................................................................... 33
switch............................................................................................................................... 33
break i continue............................................................................................................................... 35
include i require ............................................................................................................................... 36
FUNKCJE............................................................................................................................... 36
Klasy i programowanie obiektowe................................................................................................................... 37
PORÓWNYWANIE WZORCÓW ............................................................................................................................... 39
Podsumowanie ............................................................................................................................... 39
ROZDZIAŁ 3. FORMULARZE I COOKIE....................................................................................................... 40
WSTĘP............................................................................................................................... 40
OBSŁUGA FORMULARZY W PHP............................................................................................................................ 41
Skalarne i wielowartościowe elementy formularza.......................................................................................... 41
Alternatywne metody odczytywania wartości z formularza ............................................................................. 42
Użycie formularzy do przesyłania plików ........................................................................................................ 45
Użycie rysunku jako przycisku wysłania danych.............................................................................................. 45
KONTROLA POPRAWNOŚCI DANYCH FORMULARZA................................................................................................ 46
Kontrola danych za pomocą wyrażeń regularnych.......................................................................................... 46
Kontrola poprawności za pomocą sprawdzania typów.................................................................................... 47
Klasa Validator ............................................................................................................................... 48
COOKIE ............................................................................................................................... 49
WAŻNE ZAGADNIENIA PROGRAMOWANIA DLA WWW.......................................................................................... 50
Obsługa nieprawidłowych danych ................................................................................................................... 50
Obsługa i formatowanie wyświetlanych danych .............................................................................................. 52
PODSUMOWANIE ............................................................................................................................... 57
ROZDZIAŁ 4. OPERACJE NA PLIKACH........................................................................................................ 58
WSTĘP............................................................................................................................... 58
ODCZYT I ZAPIS PLIKÓW............................................................................................................................... 58
UŻYCIE GNIAZD............................................................................................................................... 59
UŻYCIE POTOKÓW ............................................................................................................................... 60
KLASA FILE............................................................................................................................... 61
PODSUMOWANIE ............................................................................................................................... 61
ROZDZIAŁ 5. WYSYŁANIE PLIKÓW PRZEZ FORMULARZ.................................................................... 62
WSTĘP............................................................................................................................... 62
WYSYŁANIE POJEDYNCZEGO PLIKU....................................................................................................................... 62
PUŁAPKI ............................................................................................................................... 64
PRZESYŁANIE WIELU PLIKÓW ............................................................................................................................... 64
BEZPIECZEŃSTWO ............................................................................................................................... 65
PODSUMOWANIE ............................................................................................................................... 66
ROZDZIAŁ 6. WSPÓŁPRACA Z BAZAMI DANYCH.................................................................................... 67
WSTĘP............................................................................................................................... 67
WPROWADZENIE ............................................................................................................................... 67
FUNKCJE BAZ DANYCH ............................................................................................................................... 67
MYSQL............................................................................................................................... 68 Rozpoczynamy pracę z MySQL ........................................................................................................................ 68
Użycie MySQL............................................................................................................................... 68
ODBC............................................................................................................................... 71
Podstawy ODBC ............................................................................................................................... 71
Instalowanie i kompilowanie unixODBC .................................................................................................... 72
Kompilowanie PHP z obsługą unixODBC .................................................................................................. 72
Instalowanie sterownika OOB...................................................................................................................... 72
Konfigurowanie OOB ............................................................................................................................... 72
Korzystanie z ODBC ............................................................................................................................... 73
PHPLIB ............................................................................................................................... 74
PRZECHOWYWANIE DANYCH Z FORMULARZY........................................................................................................ 75
WYKORZYSTANIE MOŻLIWOŚCI BAZY DANYCH..................................................................................................... 77
PODSUMOWANIE ............................................................................................................................... 78
ROZDZIAŁ 7. SESJE I STAN APLIKACJI....................................................................................................... 80
WSTĘP............................................................................................................................... 80
PODSTAWY MECHANIZMU SESJI............................................................................................................................. 80
WBUDOWANY W PHP MECHANIZM ZARZĄDZANIA SESJAMI .................................................................................. 81
Rozpoczęcie pracy z sesjami w PHP ................................................................................................................ 81
Przesyłanie identyfikatora sesji bez użycia cookie........................................................................................... 83
Zapisywanie zmiennych sesji w bazie danych .................................................................................................. 85
Inne funkcje i opcje dotyczące sesji.................................................................................................................. 89
UŻYCIE PHPLIB DO OBSŁUGI SESJI....................................................................................................................... 90
TWORZENIE WŁASNEGO MECHANIZMU SESJI ......................................................................................................... 92
INŻYNIERIA PROGRAMOWANIA A SESJE ................................................................................................................. 92
PODSUMOWANIE ............................................................................................................................... 94
ROZDZIAŁ 8. UWIERZYTELNIANIE.............................................................................................................. 95
WSTĘP............................................................................................................................... 95
PODSTAWOWE UWIERZYTELNIANIE W APACHE ..................................................................................................... 95
AKTUALIZACJA PLIKU .HTACCESS PRZY UŻYCIU PHP............................................................................................ 97
PODSTAWOWE UWIERZYTELNIANIE ZA POMOCĄ PHP ........................................................................................... 99
KOMPLETNY SYSTEM UWIERZYTELNIANIA OPARTY O PHP ................................................................................. 100
PODSUMOWANIE ............................................................................................................................... 104
ROZDZIAŁ 9. NIEZALEŻNOŚĆ OD PRZEGLĄDARKI............................................................................. 105
WSTĘP............................................................................................................................... 105
ROZPOCZYNAMY............................................................................................................................... 105
WEWNĘTRZNE FUNKCJE PHP.............................................................................................................................. 106
Dodatkowe informacje na temat Browscap ................................................................................................... 106
BROWSERHAWK............................................................................................................................... 109
WYKORZYSTANIE DANYCH O PRZEGLĄDARCE..................................................................................................... 113
PODSUMOWANIE ............................................................................................................................... 114
ROZDZIAŁ 10. URUCHAMIANIE................................................................................................................... 115
WSTĘP............................................................................................................................... 115
INŻYNIERIA PROGRAMOWANIA A URUCHAMIANIE ............................................................................................... 115
Projekt aplikacji ............................................................................................................................... 115
Definiowanie standardów programowania.................................................................................................... 116
Przegląd oprogramowania............................................................................................................................. 116
Testowanie............................................................................................................................... 117
Uruchamianie............................................................................................................................... 117
PROGRAMOWANIE DEFENSYWNE......................................................................................................................... 118
WŁASNA OBSŁUGA BŁĘDÓW............................................................................................................................... 122 ZAAWANSOWANA OBSŁUGA BŁĘDÓW ................................................................................................................. 125
PODSUMOWANIE ............................................................................................................................... 129
BIBLIOGRAFIA ............................................................................................................................... 130
ROZDZIAŁ 11. PONOWNE WYKORZYSTANIE KODU............................................................................ 131
WSTĘP............................................................................................................................... 131
PONOWNE WYKORZYSTANIE KODU A INŻYNIERIA PROGRAMOWANIA.................................................................. 131
PONOWNE UŻYCIE ISTNIEJĄCEGO KODU .............................................................................................................. 132
PHP............................................................................................................................... 132
C/C++............................................................................................................................... 133
Java ............................................................................................................................... 138
Dodawanie obsługi Javy w PHP na *niksach ............................................................................................ 138
Dołączanie obsługi Javy w PHP dla Windows .......................................................................................... 139
Opcje konfiguracji Javy.............................................................................................................................. 139
COM............................................................................................................................... 141
Inne metody ............................................................................................................................... 143
PODSUMOWANIE ............................................................................................................................... 144
BIBLIOGRAFIA ............................................................................................................................... 144
ROZDZIAŁ 12. ODDZIELANIE KODU HTML OD PHP............................................................................. 145
WSTĘP............................................................................................................................... 145
WPROWADZENIE ............................................................................................................................... 145
ODDZIELENIE I INTEGRACJA PRZY UŻYCIU WBUDOWANYCH FUNKCJI PHP.......................................................... 146
Motywacja ............................................................................................................................... 146
Implementacja ............................................................................................................................... 147
Czego należy unikać ............................................................................................................................... 151
Podsumowanie: Oddzielanie i integracja przy wykorzystaniu funkcji PHP.................................................. 151
WYKORZYSTANIE SYSTEMU SZABLONÓW............................................................................................................ 152
FastTemplate............................................................................................................................... 152
Zaawansowane techniki użycia FastTemplate ............................................................................................... 157
PODSUMOWANIE ............................................................................................................................... 159
BIBLIOGRAFIA ............................................................................................................................... 159
ROZDZIAŁ 13. FAJNY PHP.............................................................................................................................. 160
WSTĘP............................................................................................................................... 160
WYSYŁANIE DO PRZEGLĄDARKI PLIKÓW INNYCH NIŻ HTML.............................................................................. 160
SKRYPTY AUTOMATYZUJĄCE .............................................................................................................................. 164
WDDX............................................................................................................................... 168
MONITOROWANIE SIECI ............................................................................................................................... 172
PODSUMOWANIE ............................................................................................................................... 174
ROZDZIAŁ 14. WITRYNY OPARTE O SZABLONY................................................................................... 175
PODSTAWY WYKORZYSTANIA SZABLONÓW......................................................................................................... 175
ZAPOŻYCZANIE ............................................................................................................................... 183
PERSONALIZACJA WITRYNY............................................................................................................................... 185
OBSŁUGA WIELU JĘZYKÓW............................................................................................................................... 187
PODSUMOWANIE ............................................................................................................................... 189
ROZDZIAŁ 15. WITRYNY OPARTE O BAZĘ DANYCH............................................................................ 190
WSTĘP............................................................................................................................... 190
PROJEKT BAZY DANYCH ............................................................................................................................... 190
ZARZĄDZANIE DANYMI APLIKACJI....................................................................................................................... 192
WYŚWIETLANIE DANYCH ............................................................................................................................... 199
PODSUMOWANIE ............................................................................................................................... 204 ROZDZIAŁ 16. GENEROWANIE STATYCZNYCH STRON HTML W OPARCIU O DYNAMICZNE
DANE............................................................................................................................... 205
WSTĘP............................................................................................................................... 205
KONCEPCJA ............................................................................................................................... 205
GENEROWANIE STRON STATYCZNYCH................................................................................................................. 205
Użycie buforowania............................................................................................................................... 205
Użycie FastTemplate ............................................................................................................................... 207
TECHNIKI BUFOROWANIA............................................................................................................................... 208
PODSUMOWANIE ............................................................................................................................... 210
ROZDZIAŁ 17. WITRYNY HANDLU ELEKTRONICZNEGO................................................................... 211
WSTĘP............................................................................................................................... 211
BEZPIECZEŃSTWO ............................................................................................................................... 211
Zastosowanie SSL............................................................................................................................... 211
Certyfikaty ............................................................................................................................... 211
Bezpieczeństwo bazy danych.......................................................................................................................... 212
PRZETWARZANIE PŁATNOŚCI............................................................................................................................... 212
DOSTARCZANIE PRODUKTÓW.............................................................................................................................. 219
PODSUMOWANIE ............................................................................................................................... 220
DODATEK A. FUNKCJE............................................................................................................................... 221
DODATEK B. PREDEFINIOWANE ZMIENNE I STAŁE PHP................................................................... 367
ZMIENNE ............................................................................................................................... 367
Zmienne Apache ............................................................................................................................... 367
Zmienne środowiska............................................................................................................................... 369
Zmienne PHP ............................................................................................................................... 369
STAŁE............................................................................................................................... 370
DODATEK C. OPCJE KOMPILACJI PHP..................................................................................................... 372
BAZY DANYCH ............................................................................................................................... 372
HANDEL ELEKTRONICZNY ............................................................................................................................... 374
GRAFIKA ............................................................................................................................... 374
RÓŻNE............................................................................................................................... 375
--enable-inline-optimization........................................................................................................................... 376
SIEĆ............................................................................................................................... 379
DZIAŁANIE PHP ............................................................................................................................... 379
SERWER............................................................................................................................... 380
TEKST I JĘZYK ............................................................................................................................... 380
XML............................................................................................................................... 381
DODATEK D. OPCJE KONFIGURACJI PHP ............................................................................................... 382
OGÓLNE DYREKTYWY KONFIGURACJI ................................................................................................................. 382
DYREKTYWY KONFIGURACJI POCZTY .................................................................................................................. 385
DYREKTYWY KONFIGURACJI TRYBU BEZPIECZNEGO ........................................................................................... 385
DYREKTYWY KONFIGURACJI DEBUGGERA........................................................................................................... 385
DYREKTYWY ŁADOWANIA ROZSZERZEŃ ............................................................................................................. 385
DYREKTYWY KONFIGURACJI MYSQL................................................................................................................. 386
DYREKTYWY KONFIGURACJI MSQL.................................................................................................................... 386
DYREKTYWY KONFIGURACJI POSTGRESQL ........................................................................................................ 386
DYREKTYWY KONFIGURACJI SYBASE.................................................................................................................. 387
DYREKTYWY KONFIGURACJI SYBASE-CT ........................................................................................................... 387
DYREKTYWY KONFIGURACJI INFORMIX .............................................................................................................. 388
DYREKTYWY KONFIGURACJI BC MATH.............................................................................................................. 389 DYREKTYWY KONFIGURACJI MOŻLIWOŚCI PRZEGLĄDAREK ................................................................................ 389
DYREKTYWY KONFIGURACJI ZUNIFIKOWANEGO ODBC..................................................................................... 389
DODATEK E. ZASOBY SIECI.......................................................................................................................... 390