PHP i MySQL. Tworzenie stron WWW. Wydanie drugie. Vademecum profesjonalisty.pdf

(338 KB) Pobierz
C:\Andrzej\PDF\ABC nagrywania p³yt CD\1 strona.cdr
IDZ DO
PRZYK£ADOW Y ROZDZIA£
PHP i MySQL.
Tworzenie stron WWW.
Wydanie drugie.
Vademecum profesjonalisty
Autorzy: Luke Welling, Laura Thomson
T³umaczenie: Daniel Kaczmarek, £ukasz Zieliñski
ISBN: 83-7361-140-1
Tytu³ orygina³ u: PHP and MySQL Web
Development, Second Edition
Format: B5, stron: 840
SPIS TRECI
KATALOG KSI¥¯EK
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
PHP i MySQL to wydajny tandem, pozwalaj¹cy na realizacjê wielu projektów
zwi¹zanych z programowaniem aplikacji internetowych. Autorzy ksi¹¿ki „PHP i MySQL.
Tworzenie stron WWW. Wydanie drugie. Vademecum profesjonalisty” stworzyli wiêc
unikatowy podrêcznik, który ³¹czy w sobie opis funkcjonalnoci PHP i MySQL
z prezentacj¹ wielu praktycznych rozwi¹zañ, stworzonych za pomoc¹ tych narzêdzi.
To podejcie okaza³o siê trafione, czego dowodem jest ogromna popularnoæ
pierwszego wydania tej ksi¹¿ki.
Oprócz sk³adni i biblioteki funkcji PHP, ksi¹¿ka opisuje równie¿ podstawowe pojêcia
z dziedziny profesjonalnej in¿ynierii oprogramowania zwi¹zanego z sieci¹ WWW.
Niektóre, takie jak utrzymywanie, wspó³praca i testowanie, s¹ kwestiami istotnymi
dla in¿ynierów oprogramowania. Inne pojêcia, takie jak uwierzytelnianie, szyfrowanie
i kontrola sesji, maj¹ szczególne znaczenie dla projektów programistycznych opartych
na Internecie.
• Podstawowy kurs PHP
• Tworzenie i obs³uga baz danych za pomoc¹ MySQL
• Dynamiczne tworzenie kodu HTML, obrazków i dokumentów
• Tworzenie bezpiecznych us³ug za pomoc¹ uwierzytelniania i SSL
• Tworzenie koszyka na zakupy dla witryn handlu elektronicznego
• Opis praktyk zwi¹zanych z in¿ynieri¹ oprogramowania dla wiêkszych
projektów WWW
• Zastosowanie obiektowych technik programistycznych
• Tworzenie spersonalizowanych dokumentów PDF
• Korzystanie z us³ug WWW za pomoc¹ XML i SOAP
„PHP i MySQL. Tworzenie stron WWW. Wydanie drugie. Vademecum profesjonalisty” to
ksi¹¿ka, która nie tylko przekazuje wiedzê na temat PHP i MySQL, ale tak¿e prezentuje
praktyczne sposoby jej wykorzystania. Jeli chcesz szybko nauczyæ siê tworzenia
profesjonalnych aplikacji WWW, ksi¹¿ka ta bêdzie trafionym zakupem.
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWOCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
12071183.003.png 12071183.004.png 12071183.005.png 12071183.006.png 12071183.001.png 12071183.002.png
Zastosowanie PHP..................................................................................................... 32
Przykładowa aplikacja: „Czci samochodowe Janka”...................................................32
Formularz zamówienia.......................................................................................... 32
Przetwarzanie formularza...................................................................................... 34
Osadzanie PHP w HTML ........................................................................................... 34
Zastosowanie znaczników PHP ............................................................................. 35
Style znaczników PHP.......................................................................................... 36
Instrukcje PHP..................................................................................................... 36
Odstpy............................................................................................................... 37
Komentarze ......................................................................................................... 37
Dodawanie zawartoci dynamicznej............................................................................. 38
Wywoływanie funkcji ........................................................................................... 39
Funkcja date()...................................................................................................... 39
Dostp do zmiennych formularza................................................................................. 39
Zmienne formularza.............................................................................................. 40
Ł:czenie ci:gów................................................................................................... 42
Zmienne i ci:gi znaków ........................................................................................ 43
Identyfikatory ............................................................................................................ 44
Zmienne zadeklarowane przez u<ytkownika ................................................................. 44
Przypisywanie wartoci zmiennym .............................................................................. 44
Typy zmiennych........................................................................................................ 45
Typy danych w PHP............................................................................................. 45
Siła typu .............................................................................................................. 45
Rzutowanie typu................................................................................................... 46
Zmienne zmiennych.............................................................................................. 46
Stałe..........................................................................................................................47
Zasig zmiennych....................................................................................................... 47
Operatory.................................................................................................................. 48
Operatory arytmetyczne........................................................................................ 49
Operatory ci:gów ................................................................................................. 50
Operatory przypisania ........................................................................................... 50
Operatory porówna>............................................................................................. 52
Operatory logiczne................................................................................................ 53
 
6
PHP i MySQL. Tworzenie stron WWW. Vademecum profesjonalisty
Operatory bitowe.................................................................................................. 54
Pozostałe operatory .............................................................................................. 54
Stosowanie operatorów: obliczanie sum w formularzu...................................................56
Pierwsze>stwo i kolejno@: wyznaczanie wartoci wyra<e>............................................57
Zarz:dzanie zmiennymi .............................................................................................. 58
Sprawdzanie i ustawianie typów zmiennych............................................................ 58
Sprawdzanie stanu zmiennej.................................................................................. 59
Reinterpretacja zmiennych..................................................................................... 60
Struktury kontroluj:ce ................................................................................................ 60
Podejmowanie decyzji za pomoc: instrukcji warunkowych............................................60
Instrukcja if.......................................................................................................... 61
Bloki kodu........................................................................................................... 61
Instrukcja else ...................................................................................................... 62
Instrukcja elseif.................................................................................................... 62
Instrukcja switch.................................................................................................. 63
Porównanie ró<nych instrukcji warunkowych.......................................................... 65
Iteracja: powtarzanie działa> ....................................................................................... 65
Ptle while ........................................................................................................... 66
Ptle for i foreach................................................................................................. 67
Ptle do..while...................................................................................................... 69
Wyłamywanie si ze struktury skryptu......................................................................... 69
W nastpnym rozdziale: zapisywanie zamówienia klienta ..............................................69
Zapisywanie danych do póCniejszego u<ycia.................................................................71
Przechowywanie i wyszukiwanie zamówie> Janka........................................................72
Podstawowe informacje na temat przetwarzania plików.................................................73
Otwieranie pliku......................................................................................................... 73
Tryby otwarcia pliku............................................................................................. 73
Stosowanie funkcji fopen() do otwarcia pliku.......................................................... 74
Otwieranie pliku przez protokół FTP lub HTTP...................................................... 76
Problemy z otwieraniem plików............................................................................. 77
Zapisywanie danych w pliku ....................................................................................... 79
Parametry funkcji fwrite() ..................................................................................... 79
Formaty plików .................................................................................................... 79
Zamykanie pliku ........................................................................................................ 80
Odczyt z pliku............................................................................................................ 80
Otwieranie pliku w celu odczytu — fopen()............................................................ 81
Wiedzie@, kiedy przesta@ — feof()......................................................................... 82
Odczytywanie pliku wiersz po wierszu — fgets(), fgetss() i fgetcsv()........................82
Odczyt całego pliku — readfile(), fpassthru(), file()................................................. 83
Odczyt pojedynczego znaku — fgetc()................................................................... 84
Odczytywanie zadanej długoci — fread().............................................................. 84
Inne przydatne funkcje plikowe ................................................................................... 85
Sprawdzanie istnienia pliku — file_exists()............................................................. 85
Okrelanie wielkoci pliku — filesize() .................................................................. 85
Kasowanie pliku — unlink().................................................................................. 85
Poruszanie si wewn:trz pliku — rewind(), fseek() i ftell().......................................85
Blokowanie pliku ....................................................................................................... 86
Lepszy sposób obróbki danych — systemy zarz:dzania bazami danych ..........................88
Problemy zwi:zane ze stosowaniem plików jednorodnych.......................................88
Jak RDBMS rozwi:zuj: powy<sze problemy?.........................................................88
Propozycje dalszych lektur.......................................................................................... 89
W nastpnym rozdziale............................................................................................... 89
Spis tre ci
7
!"
Czym s: tablice? ........................................................................................................ 91
Tablice indeksowane numerycznie............................................................................... 92
Inicjowanie tablic indeksowanych numerycznie.......................................................92
Dostp do zawartoci tablicy.................................................................................. 93
Dostp do tablic przy zastosowaniu ptli................................................................. 94
Tablice asocjacyjne .................................................................................................... 94
Inicjowanie tablicy asocjacyjnej............................................................................. 94
Dostp do elementów tablicy ................................................................................. 95
Stosowanie ptli z tablicami asocjacyjnymi.............................................................95
Tablice wielowymiarowe ............................................................................................ 97
Sortowanie tablic...................................................................................................... 100
Stosowanie funkcji sort()..................................................................................... 100
Stosowanie funkcji asort() i ksort() do porz:dkowania tablic asocjacyjnych............. 101
Sortowanie odwrotne .......................................................................................... 101
Sortowanie tablic wielowymiarowych........................................................................ 101
Typy sortowa> definiowane przez u<ytkownika..................................................... 102
Odwrotne sortowanie zdefiniowane przez u<ytkownika.......................................... 103
Zmiany kolejnoci elementów w tablicach.................................................................. 104
Stosowanie funkcji shuffle()................................................................................ 104
Stosowanie funkcji array_reverse()....................................................................... 105
Ładowanie tablic z plików......................................................................................... 106
Inne działania na tablicach........................................................................................ 109
Poruszanie si wewn:trz tablicy — funkcje each(), current(), reset(), end(),
next(), pos() i prev()......................................................................................... 109
Doł:czanie dowolnej funkcji do ka<dego elementu tablicy — funkcja array_walk().. 110
Liczenie elementów tablicy: count(), sizeof() i array_count_values()....................... 111
Konwersja tablic na zmienne skalarne — funkcja extract()..................................... 112
Propozycje dalszych lektur........................................................................................ 113
W nastpnym rozdziale............................................................................................. 113
# $"%&'(&" )
Przykładowa aplikacja — Inteligentny Formularz Pocztowy........................................ 115
Formatowanie ci:gów............................................................................................... 117
Przycinanie ci:gów — funkcje chop(), ltrim() i trim()............................................ 117
Formatowanie ci:gów w celu ich prezentacji......................................................... 118
Formatowanie ci:gów do przechowania — funkcje AddSlashes() i StripSlashes().... 121
Ł:czenie i rozdzielanie ci:gów za pomoc: funkcji ci:gów ........................................... 122
Stosowanie funkcji explode(), implode() i join().................................................... 123
Stosowanie funkcji strtok().................................................................................. 124
Stosowanie funkcji substr().................................................................................. 124
Porównywanie ci:gów.............................................................................................. 125
Porz:dkowanie ci:gów — funkcje strcmp(), strcasecmp() i strnatcmp()................... 125
Sprawdzanie długoci ci:gu za pomoc: funkcji strlen().......................................... 126
Dopasowywanie i zamiana podci:gów za pomoc: funkcji ci:gów................................. 126
Znajdowanie ci:gów w ci:gach — funkcje strstr(), strchr(), strrchr() i stristr().......... 127
Odnajdywanie pozycji podci:gu — funkcje strpos() i strrpos()............................... 128
Zamiana podci:gów — funkcje str_replace() i substr_replace()............................... 129
Wprowadzenie do wyra<e> regularnych..................................................................... 130
Podstawy........................................................................................................... 130
Zbiory i klasy znaków......................................................................................... 131
Powtarzalno@.................................................................................................... 132
Podwyra<enia..................................................................................................... 132
Podwyra<enia policzalne ..................................................................................... 132
Kotwiczenie na pocz:tku lub na ko>cu ci:gu......................................................... 133
Rozgałzianie..................................................................................................... 133
8
PHP i MySQL. Tworzenie stron WWW. Vademecum profesjonalisty
Dopasowywanie specjalnych znaków literowych................................................... 133
Podsumowanie znaków specjalnych..................................................................... 133
Umieszczanie wszystkiego razem (Inteligentny Formularz).................................... 134
Odnajdywanie podci:gów za pomoc: wyra<e> regularnych.......................................... 135
Zamiana podci:gów za pomoc: wyra<e> regularnych.................................................. 136
Rozdzielanie ci:gów za pomoc: wyra<e> regularnych................................................. 136
Porównanie funkcji ci:gów i funkcji wyra<e> regularnych........................................... 137
Propozycje dalszych lektur........................................................................................ 137
W nastpnym rozdziale............................................................................................. 137
) *+
Dlaczego ponownie stosowa@ kod?............................................................................ 139
Koszt................................................................................................................. 140
Niezawodno@.................................................................................................... 140
Spójno@............................................................................................................ 140
Stosowanie funkcji require() i include()...................................................................... 140
Stosowanie funkcji require()................................................................................ 141
Rozszerzenia plików i require()............................................................................ 142
Znaczniki PHP i require().................................................................................... 142
Stosowanie require() w szablonach stron WWW......................................................... 142
Stosowanie opcji auto_prepend_file i auto_append_file.......................................... 147
Stosowanie funkcji include()................................................................................ 148
Stosowanie funkcji w PHP........................................................................................ 149
Wywoływanie funkcji ......................................................................................... 150
Wywołanie niezdefiniowanej funkcji.................................................................... 151
Wielko@ liter a nazwy funkcji............................................................................. 152
Dlaczego powinno si definiowa@ własne funkcje?...................................................... 152
Podstawowa struktura funkcji.................................................................................... 152
Nadawanie nazwy funkcji.................................................................................... 153
Parametry................................................................................................................ 154
Zasig ..................................................................................................................... 156
Przekazanie przez referencj czy przekazanie przez warto@?....................................... 158
Powrót z funkcji....................................................................................................... 159
Zwracanie wartoci przez funkcje.............................................................................. 160
Bloki kodu......................................................................................................... 161
Rekurencja .............................................................................................................. 162
Propozycje dalszych lektur........................................................................................ 164
W nastpnym rozdziale............................................................................................. 164
, ! ,)
Koncepcje programowania obiektowego .................................................................... 165
Klasy i obiekty ................................................................................................... 165
Polimorfizm....................................................................................................... 167
Dziedziczenie..................................................................................................... 167
Tworzenie klas, atrybutów i operacji w PHP............................................................... 168
Struktura klasy ................................................................................................... 168
Konstruktory...................................................................................................... 168
Tworzenie egzemplarzy ............................................................................................ 169
Stosowanie atrybutów klasy ...................................................................................... 169
Wywoływanie operacji klas....................................................................................... 171
Implementacja dziedziczenia w PHP.......................................................................... 172
Uniewa<nianie.................................................................................................... 173
Wielodziedziczenie............................................................................................. 174
Tworzenie klas......................................................................................................... 175
Tworzenie kodu dla własnej klasy.............................................................................. 175
W nastpnej czci................................................................................................... 183
Zgłoś jeśli naruszono regulamin