PHP Kompendium.pdf

(3323 KB) Pobierz
Microsoft Word - PHP - Kompendium.doc
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
C ZYM JEST PHP.................................................................................................................................................8
D LACZEGO POWINIENEŚ UŻYĆ PHP....................................................................................................................9
G DZIE SZUKAĆ POMOCY .....................................................................................................................................9
P ODZIĘKOWANIA .............................................................................................................................................10
O AUTORZE .....................................................................................................................................................10
ROZDZIAŁ 1. KOMPILACJA I INSTALOWANIE PHP.............................................................................11
W STĘP ............................................................................................................................................................11
P OBIERANIE PHP.............................................................................................................................................11
I NSTALOWANIE 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
K OMPILOWANIE 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
K ONFIGUROWANIE PHP...................................................................................................................................20
Korzystanie z pliku php.ini..........................................................................................................................20
Inne metody zmiany konfiguracji PHP........................................................................................................21
P ODSUMOWANIE ..............................................................................................................................................22
ROZDZIAŁ 2. JĘZYK.....................................................................................................................................23
W STĘP ............................................................................................................................................................23
O GÓLNE INFORMACJE NA TEMAT SKŁADNI ........................................................................................................23
T YPY ...............................................................................................................................................................24
Liczby — całkowite i zmiennoprzecinkowe..................................................................................................24
Ciągi...........................................................................................................................................................24
Tablice........................................................................................................................................................25
Z MIENNE I STAŁE .............................................................................................................................................26
Zmienne predefiniowane.............................................................................................................................26
Zasięg zmiennych........................................................................................................................................30
Stałe............................................................................................................................................................31
O PERATORY I KOLEJNOŚĆ OPERATORÓW ..........................................................................................................31
P ROGRAMOWANIE 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
F UNKCJE .........................................................................................................................................................36
Klasy i programowanie obiektowe..............................................................................................................37
P ORÓWNYWANIE WZORCÓW ............................................................................................................................39
Podsumowanie............................................................................................................................................39
ROZDZIAŁ 3. FORMULARZE I COOKIE...................................................................................................40
W STĘP ............................................................................................................................................................40
O BSŁ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
K ONTROLA 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
C OOKIE ...........................................................................................................................................................49
Obsługa nieprawidłowych danych...............................................................................................................50
Obsługa i formatowanie wyświetlanych danych..........................................................................................52
P ODSUMOWANIE ..............................................................................................................................................57
ROZDZIAŁ 4. OPERACJE NA PLIKACH....................................................................................................58
W STĘP ............................................................................................................................................................58
O DCZYT I ZAPIS PLIKÓW ...................................................................................................................................58
U ŻYCIE GNIAZD ...............................................................................................................................................59
U ŻYCIE POTOKÓW ...........................................................................................................................................60
K LASA F ILE .....................................................................................................................................................61
P ODSUMOWANIE ..............................................................................................................................................61
ROZDZIAŁ 5. WYSYŁANIE PLIKÓW PRZEZ FORMULARZ.................................................................62
W STĘP ............................................................................................................................................................62
W YSYŁANIE POJEDYNCZEGO PLIKU ..................................................................................................................62
P UŁAPKI ..........................................................................................................................................................64
P RZESYŁANIE WIELU PLIKÓW ...........................................................................................................................64
B EZPIECZEŃSTWO ............................................................................................................................................65
P ODSUMOWANIE ..............................................................................................................................................66
ROZDZIAŁ 6. WSPÓŁPRACA Z BAZAMI DANYCH................................................................................67
W STĘP ............................................................................................................................................................67
W PROWADZENIE ..............................................................................................................................................67
F UNKCJE BAZ DANYCH .....................................................................................................................................67
M Y SQL..........................................................................................................................................................68
Spis Treści
2
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
P RZECHOWYWANIE DANYCH Z FORMULARZY ....................................................................................................75
W YKORZYSTANIE MOŻLIWOŚCI BAZY DANYCH .................................................................................................77
P ODSUMOWANIE ..............................................................................................................................................78
ROZDZIAŁ 7. SESJE I STAN APLIKACJI...................................................................................................80
W STĘP ............................................................................................................................................................80
P ODSTAWY MECHANIZMU SESJI ........................................................................................................................80
W BUDOWANY 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
T WORZENIE WŁASNEGO MECHANIZMU SESJI .....................................................................................................92
I NŻYNIERIA PROGRAMOWANIA A SESJE .............................................................................................................92
P ODSUMOWANIE ..............................................................................................................................................94
ROZDZIAŁ 8. UWIERZYTELNIANIE.........................................................................................................95
W STĘP ............................................................................................................................................................95
P ODSTAWOWE UWIERZYTELNIANIE W A PACHE .................................................................................................95
A KTUALIZACJA PLIKU . HTACCESS PRZY UŻYCIU PHP........................................................................................97
P ODSTAWOWE UWIERZYTELNIANIE ZA POMOCĄ PHP........................................................................................99
K OMPLETNY SYSTEM UWIERZYTELNIANIA OPARTY O PHP..............................................................................100
P ODSUMOWANIE ............................................................................................................................................104
ROZDZIAŁ 9. NIEZALEŻNOŚĆ OD PRZEGLĄDARKI..........................................................................105
W STĘP ..........................................................................................................................................................105
R OZPOCZYNAMY ...........................................................................................................................................105
W EWNĘTRZNE FUNKCJE PHP.........................................................................................................................106
Dodatkowe informacje na temat Browscap...............................................................................................106
B ROWSER H AWK ............................................................................................................................................109
W YKORZYSTANIE DANYCH O PRZEGLĄDARCE .................................................................................................113
P ODSUMOWANIE ............................................................................................................................................114
ROZDZIAŁ 10. URUCHAMIANIE..............................................................................................................115
W STĘP ..........................................................................................................................................................115
I NŻYNIERIA PROGRAMOWANIA A URUCHAMIANIE ...........................................................................................115
Projekt aplikacji........................................................................................................................................115
Definiowanie standardów programowania................................................................................................116
Przegląd oprogramowania........................................................................................................................116
Testowanie................................................................................................................................................117
Uruchamianie...........................................................................................................................................117
P ROGRAMOWANIE DEFENSYWNE ....................................................................................................................118
W ŁASNA OBSŁUGA BŁĘDÓW ..........................................................................................................................122
3
PHP – Kompendium wiedzy
 
Z AAWANSOWANA OBSŁUGA BŁĘDÓW .............................................................................................................125
P ODSUMOWANIE ............................................................................................................................................129
B IBLIOGRAFIA ...............................................................................................................................................130
ROZDZIAŁ 11. PONOWNE WYKORZYSTANIE KODU.........................................................................131
W STĘP ..........................................................................................................................................................131
P ONOWNE WYKORZYSTANIE KODU A INŻYNIERIA PROGRAMOWANIA ...............................................................131
P ONOWNE 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
P ODSUMOWANIE ............................................................................................................................................144
B IBLIOGRAFIA ...............................................................................................................................................144
ROZDZIAŁ 12. ODDZIELANIE KODU HTML OD PHP..........................................................................145
W STĘP ..........................................................................................................................................................145
W PROWADZENIE ............................................................................................................................................145
O DDZIELENIE 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
W YKORZYSTANIE SYSTEMU SZABLONÓW .......................................................................................................152
FastTemplate............................................................................................................................................152
Zaawansowane techniki użycia FastTemplate...........................................................................................157
P ODSUMOWANIE ............................................................................................................................................159
B IBLIOGRAFIA ...............................................................................................................................................159
ROZDZIAŁ 13. FAJNY PHP.........................................................................................................................160
W STĘP ..........................................................................................................................................................160
W YSYŁANIE DO PRZEGLĄDARKI PLIKÓW INNYCH NIŻ HTML..........................................................................160
S KRYPTY AUTOMATYZUJĄCE .........................................................................................................................164
WDDX.........................................................................................................................................................168
M ONITOROWANIE SIECI ..................................................................................................................................172
P ODSUMOWANIE ............................................................................................................................................174
ROZDZIAŁ 14. WITRYNY OPARTE O SZABLONY................................................................................175
P ODSTAWY WYKORZYSTANIA SZABLONÓW ....................................................................................................175
Z APOŻYCZANIE ..............................................................................................................................................183
P ERSONALIZACJA WITRYNY ...........................................................................................................................185
O BSŁUGA WIELU JĘZYKÓW .............................................................................................................................187
P ODSUMOWANIE ............................................................................................................................................189
ROZDZIAŁ 15. WITRYNY OPARTE O BAZĘ DANYCH.........................................................................190
W STĘP ..........................................................................................................................................................190
P ROJEKT BAZY DANYCH .................................................................................................................................190
Z ARZĄDZANIE DANYMI APLIKACJI ..................................................................................................................192
W YŚWIETLANIE DANYCH ...............................................................................................................................199
P ODSUMOWANIE ............................................................................................................................................204
Spis Treści
4
ROZDZIAŁ 16. GENEROWANIE STATYCZNYCH STRON HTML W OPARCIU O DYNAMICZNE
DANE..............................................................................................................................................................205
W STĘP ..........................................................................................................................................................205
K ONCEPCJA ...................................................................................................................................................205
G ENEROWANIE STRON STATYCZNYCH ............................................................................................................205
Użycie buforowania..................................................................................................................................205
Użycie FastTemplate.................................................................................................................................207
T ECHNIKI BUFOROWANIA ...............................................................................................................................208
P ODSUMOWANIE ............................................................................................................................................210
ROZDZIAŁ 17. WITRYNY HANDLU ELEKTRONICZNEGO................................................................211
W STĘP ..........................................................................................................................................................211
B EZPIECZEŃSTWO ..........................................................................................................................................211
Zastosowanie SSL.....................................................................................................................................211
Certyfikaty................................................................................................................................................211
Bezpieczeństwo bazy danych.....................................................................................................................212
P RZETWARZANIE PŁATNOŚCI ..........................................................................................................................212
D OSTARCZANIE PRODUKTÓW .........................................................................................................................219
P ODSUMOWANIE ............................................................................................................................................220
DODATEK A. FUNKCJE..............................................................................................................................221
DODATEK B. PREDEFINIOWANE ZMIENNE I STAŁE PHP................................................................367
Z MIENNE .......................................................................................................................................................367
Zmienne Apache........................................................................................................................................367
Zmienne środowiska..................................................................................................................................369
Zmienne PHP............................................................................................................................................369
S TAŁE ...........................................................................................................................................................370
DODATEK C. OPCJE KOMPILACJI PHP.................................................................................................372
B AZY DANYCH ...............................................................................................................................................372
H ANDEL ELEKTRONICZNY ..............................................................................................................................374
G RAFIKA .......................................................................................................................................................374
R ÓŻNE ...........................................................................................................................................................375
--enable-inline-optimization......................................................................................................................376
S IEĆ ..............................................................................................................................................................379
D ZIAŁANIE PHP............................................................................................................................................379
S ERWER ........................................................................................................................................................380
T EKST I JĘZYK ...............................................................................................................................................380
XML.............................................................................................................................................................381
DODATEK D. OPCJE KONFIGURACJI PHP............................................................................................382
O GÓLNE DYREKTYWY KONFIGURACJI .............................................................................................................382
D YREKTYWY KONFIGURACJI POCZTY .............................................................................................................385
D YREKTYWY KONFIGURACJI TRYBU BEZPIECZNEGO ........................................................................................385
D YREKTYWY KONFIGURACJI DEBUGGERA .......................................................................................................385
D YREKTYWY ŁADOWANIA ROZSZERZEŃ .........................................................................................................385
D YREKTYWY KONFIGURACJI M Y SQL............................................................................................................386
D YREKTYWY KONFIGURACJI M SQL...............................................................................................................386
D YREKTYWY KONFIGURACJI P OSTGRE SQL....................................................................................................386
D YREKTYWY KONFIGURACJI S YBASE .............................................................................................................387
D YREKTYWY KONFIGURACJI S YBASE -CT.......................................................................................................387
D YREKTYWY KONFIGURACJI I NFORMIX ..........................................................................................................388
D YREKTYWY KONFIGURACJI BC M ATH ..........................................................................................................389
5
PHP – Kompendium wiedzy
 
Zgłoś jeśli naruszono regulamin