PHP i MySQL. Tworzenie aplikacji WWW.pdf

(326 KB) Pobierz
PHP i MySQL. Tworzenie aplikacji WWW
IDZ DO
PRZYK£ADOW Y ROZDZIA£
PHP i MySQL. Tworzenie
SPIS TREŒCI
aplikacji WWW
KATALOG KSI¥¯EK
Autor: Marc Wandschneider
T³umaczenie: Jaros³aw Dobrzañski, Rados³aw Meryk
ISBN: 83-246-0323-9
Tytu³ orygina³u: Core Web Application
Format: B5, stron: 856
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
Stwórz wydajne i bezpieczne aplikacje internetowe
• Poznaj zasady programowania w PHP i korzystania z baz danych
Zaprojektuj interfejs u¿ytkownika dla aplikacji
Wykorzystaj dokumenty w formacie XML
Zabezpiecz aplikacjê przed nieautoryzowanym dostêpem
Sieæ WWW ju¿ dawno przesta³a byæ jedynie zbiorem setek statycznych witryn.
Dziœ w sieci mo¿na znaleŸæ dziesi¹tki aplikacji — sklepów, katalogów, systemów
bankowych, blogów i wielu innych. Do tworzenia takich aplikacji wykorzystuje siê kilka
technologii, z których najwiêksz¹ popularnoœci¹ cieszy siê jêzyk PHP w po³¹czeniu
z baz¹ danych MySQL. Nieodp³atny dostêp, ³atwoœæ obs³ugi oraz potê¿ne mo¿liwoœci
sprawi³y, ¿e ta platforma jest stosowana przez ogromne rzesze programistów aplikacji
WWW na ca³ym œwiecie.
„PHP i MySQL. Tworzenie aplikacji WWW” to ksi¹¿ka, dziêki której poznasz mo¿liwoœci
tej technologii i nauczysz siê z nich korzystaæ, pisz¹c aplikacje internetowe. Dowiesz
siê, jak tworzyæ programy w jêzyku PHP, manipulowaæ danymi zgromadzonymi w bazie,
projektowaæ rozbudowane aplikacje i wdra¿aæ je. Przeczytasz tu o zabezpieczaniu
aplikacji, usuwaniu b³êdów, korzystaniu z plików XML i us³ug sieciowych oraz
projektowaniu ergonomicznych interfejsów u¿ytkownika. Dziêki praktycznym
przyk³adom szybko nauczysz siê stosowaæ PHP i MySQL w swoich projektach.
Programowanie w jêzyku PHP
Organizacja kodu
Zasady programowania obiektowego
Projektowanie i tworzenie baz danych
Stosowanie jêzyka SQL
Przygotowywanie projektu aplikacji
Budowanie interfejsu u¿ytkownika
Usuwanie b³êdów z kodu
Metody uwierzytelniania u¿ytkowników
Wyra¿enia regularne
Us³ugi sieciowe i protokó³ SOAP
Wdra¿anie aplikacji
Rozpocznij przygodê z programowaniem w PHP
DODAJ DO KOSZYKA
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
ONOWOŒCIACH
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
119562183.002.png 119562183.003.png 119562183.004.png 119562183.005.png
Wprowadzenie .......................................................................................................................................... 17
Dla kogo przeznaczona jest ta książka? ......................................................................... 17
O PHP ......................................................................................................................... 18
Układ książki ............................................................................................................... 19
Zanim zaczniesz .......................................................................................................... 20
Podziękowania ............................................................................................................. 20
Część I Podstawy PHP
21
Rozdział 1. Wprowadzenie w tematykę PHP ........................................................................................... 23
Pierwsze programy w PHP ............................................................................................. 23
Wpisywanie kodu PHP .................................................................................................. 25
Oznaczanie sekcji kodu PHP .................................................................................... 26
Łączenie PHP i HTML .............................................................................................. 27
Instrukcje i komentarze ........................................................................................... 28
W jaki sposób można zapamiętywać dane? .................................................................... 29
Podstawowe typy danych w PHP .................................................................................... 30
Liczby .................................................................................................................... 30
Ciągi znaków .......................................................................................................... 32
Wartości typu boolean ............................................................................................. 35
Przydatne funkcje ......................................................................................................... 36
nl2br ..................................................................................................................... 36
var_dump ............................................................................................................... 36
print_r .................................................................................................................... 37
var_export .............................................................................................................. 37
Podsumowanie ............................................................................................................ 38
Rozdział 2. Język PHP ............................................................................................................................... 39
Więcej informacji o wprowadzaniu ciągów znaków ........................................................... 39
Więcej informacji o typach danych ................................................................................. 41
Tablice ................................................................................................................... 41
Obiekty .................................................................................................................. 42
Specjalne typy i wartości ......................................................................................... 43
119562183.001.png
4
PHP i MySQL. Tworzenie aplikacji WWW
Konwersja typów .......................................................................................................... 44
Podstawy ............................................................................................................... 44
Specyficzne rodzaje konwersji typów ......................................................................... 45
Przydatne funkcje do konwersji typów ....................................................................... 49
Zmienne i stałe ............................................................................................................ 51
Definiowanie stałych ............................................................................................... 51
Odwołania do zmiennych przez wartość lub przez referencję ....................................... 51
Zasięg zmiennych ................................................................................................... 53
Czas istnienia zmiennych ........................................................................................ 53
Zmienne predefiniowane ......................................................................................... 54
Wyrażenia i operatory ................................................................................................... 55
Operatory: łączenie wyrażeń ..................................................................................... 55
Łączenie wyrażeń i priorytety operatorów .................................................................. 62
Struktury sterujące ....................................................................................................... 63
Instrukcje if ............................................................................................................ 63
Instrukcja switch ..................................................................................................... 64
Pętle while (do...while) ............................................................................................ 66
Pętle for ................................................................................................................. 67
Pętle foreach .......................................................................................................... 67
Przerwanie działania pętli ........................................................................................ 67
Podsumowanie ............................................................................................................ 69
Rozdział 3. Organizacja kodu i jego wielokrotne wykorzystywanie ..................................................... 71
Podstawowy mechanizm wielokrotnego wykorzystywania kodu: funkcje ............................. 71
Definiowanie i wywoływanie funkcji ........................................................................... 72
Przekazywanie parametrów do funkcji ....................................................................... 74
Zwracanie wartości przez funkcje ............................................................................. 78
Zasięg zmiennych wewnątrz funkcji .......................................................................... 79
Zasięg i dostępność funkcji ..................................................................................... 83
Funkcje jako zmienne .............................................................................................. 84
Sposób wielokrotnego wykorzystywania kodu dla średnio zaawansowanych:
zastosowanie plików włączanych ................................................................................ 85
Organizacja kodu w plikach ...................................................................................... 86
Wybór nazw plików i folderów ................................................................................... 88
Włączanie plików bibliotecznych w skryptach ............................................................. 90
Zastosowanie mechanizmu włączania do ładowania szablonów stron .......................... 95
Podsumowanie ............................................................................................................ 96
Rozdział 4. Programowanie obiektowe .................................................................................................. 97
Nie tylko biblioteki ....................................................................................................... 97
Programowanie obiektowe .......................................................................................... 100
Podstawowa terminologia ...................................................................................... 100
Podstawowe informacje o programowaniu obiektowym w PHP ................................... 101
Inicjalizowanie i usuwanie obiektów ........................................................................ 105
Dostępność klasy: kto może oglądać informacje ..................................................... 107
Definiowanie statycznych danych wewnątrz klas ...................................................... 109
Rozszerzanie obiektów ............................................................................................... 113
Rozszerzanie zdefiniowanych klas .......................................................................... 114
Więcej o widoczności ............................................................................................ 114
Ponowna implementacja metod klasy bazowej ........................................................ 115
Definiowanie klas w taki sposób, aby działały tak samo: polimorfizm ........................ 116
Spis treści
5
Inne własności ........................................................................................................... 123
Porównywanie obiektów ......................................................................................... 124
Klonowanie obiektów ............................................................................................ 124
Wyświetlanie wartości obiektów w sposób przyjazny dla użytkownika ......................... 125
Przekazywanie wskazówek dotyczących typów ......................................................... 126
Automatyczne ładowanie ....................................................................................... 127
Podsumowanie .......................................................................................................... 127
Rozdział 5. Tablice ....................................................................................................................................129
Więcej informacji o tablicach ....................................................................................... 129
Tworzenie tablic i umieszczanie w nich danych ........................................................ 130
Dostęp do elementów tablic .................................................................................. 132
Usuwanie elementów i całych tablic ....................................................................... 134
Zliczanie elementów tablicy ................................................................................... 135
Przetwarzanie elementów tablic w pętli ........................................................................ 135
Pętle foreach ........................................................................................................ 135
Pętle standardowe ................................................................................................ 136
Wewnętrzne liczniki pętli oraz metody each, next, prev, pos i reset ........................... 137
Metoda array_walk ................................................................................................ 139
Tablice wielowymiarowe .............................................................................................. 140
Operacje na tablicach ................................................................................................. 141
Sortowanie tablic .................................................................................................. 142
Inne operacje na tablicach ..................................................................................... 145
Podsumowanie .......................................................................................................... 147
Rozdział 6. Ciągi znaków i znaki alfabetów narodowych .....................................................................149
Ciągi znaków w PHP ................................................................................................... 149
W jaki sposób PHP interpretuje ciągi znaków? ......................................................... 150
Zestawy znaków i kodowanie Unicode .......................................................................... 150
Kod ASCII ............................................................................................................ 150
Zestawy znaków ISO 8859 .................................................................................... 151
Zestawy znaków języków dalekowschodnich ............................................................ 151
Unicode ............................................................................................................... 152
Zestawy znaków Unicode ....................................................................................... 153
Zestawy znaków w PHP ............................................................................................... 153
Obsługa innych zestawów znaków .......................................................................... 153
Kłopoty, kłopoty… ................................................................................................ 155
W jaki sposób postępować ze znakami? ................................................................. 156
Konfiguracja PHP w celu wykorzystania kodowania Unicode ........................................... 157
Instalacja i konfiguracja rozszerzeń mbstring i mbrex ............................................... 157
Przeciążanie funkcji ............................................................................................... 157
Operacje na ciągach znaków ....................................................................................... 158
Pobieranie informacji o ciągach znaków .................................................................. 159
Porządkowanie ciągów znaków ............................................................................... 160
Wyszukiwanie i porównywanie ................................................................................ 162
Wydzielanie podciągów .......................................................................................... 165
Zmiana wielkości liter ........................................................................................... 166
Konwersje kodowania ........................................................................................... 167
Podsumowanie .......................................................................................................... 167
6
PHP i MySQL. Tworzenie aplikacji WWW
Rozdział 7. Interakcje z serwerem: formularze ..................................................................................169
Przykłady formularzy ................................................................................................... 169
Przetwarzanie formularzy HTML ................................................................................... 172
Wprowadzanie formularzy na stronie ....................................................................... 172
W jaki sposób są przesyłane dane? ....................................................................... 174
Dostęp do danych formularzy z poziomu skryptu ...................................................... 176
Formularze a zestawy znaków ................................................................................ 178
Praca z serwerem ...................................................................................................... 179
Środowisko serwera .............................................................................................. 180
Zmienne serwera .................................................................................................. 180
Zmienne środowiskowe ......................................................................................... 185
Przekierowania .......................................................................................................... 186
Podsumowanie .......................................................................................................... 188
Część II Podstawowe wiadomości o bazach danych
189
Rozdział 8. Wprowadzenie do baz danych ..............................................................................................191
Terminologia .............................................................................................................. 191
Podstawy ............................................................................................................. 191
Relacyjne bazy danych .......................................................................................... 193
Powody, dla których warto korzystać z systemów zarządzania bazami danych .................. 194
Czynniki przemawiające przeciwko plikom tekstowym bądź arkuszom kalkulacyjnym ... 194
Serwery baz danych .............................................................................................. 195
Popularne serwery baz danych .................................................................................... 196
MySQL ................................................................................................................. 196
PostgreSQL .......................................................................................................... 197
Oracle .................................................................................................................. 197
Microsoft SQL Server ............................................................................................ 197
Inne ..................................................................................................................... 198
W jaki sposób dokonać wyboru serwera bazy danych? ................................................. 198
Analiza danych ..................................................................................................... 198
Możliwości ........................................................................................................... 199
Wydajność ........................................................................................................... 199
Dostępność z poziomu PHP ................................................................................... 199
Koszty ................................................................................................................. 199
Nasz wybór ................................................................................................................ 200
Wspólne interfejsy ..................................................................................................... 200
Podsumowanie .......................................................................................................... 201
Rozdział 9. Projektowanie i tworzenie baz danych ............................................................................. 203
Co należy umieścić w bazie danych? ............................................................................ 203
Organizacja danych .................................................................................................... 205
Klucze główne ...................................................................................................... 205
Wybór typów danych .............................................................................................. 206
Organizacja danych w tabele .................................................................................. 210
Indeksy ułatwiające wyszukiwanie .......................................................................... 213
Wprowadzenie do języka SQL ...................................................................................... 213
Tworzenie baz danych ................................................................................................. 215
Komunikacja z serwerem bazy danych .................................................................... 215
Nawiązywanie połączenia i uwierzytelnianie ............................................................. 215
Tworzenie bazy danych .......................................................................................... 216
Zgłoś jeśli naruszono regulamin