PHP5, Apache i MySQL. Od podstaw.pdf

(387 KB) Pobierz
Beginning PHP5, Apache, MySQL Web Development
IDZ DO
PRZYK£ADOW Y ROZDZIA£
PHP5, Apache
SPIS TREŒCI
i MySQL. Od podstaw
KATALOG KSI¥¯EK
Autor: Zespó³ autorów
T³umaczenie: Rafa³ Joñca
ISBN: 83-7361-997-6
Tytu³ orygina³ u: Beginning PHP5, Apache,
MySQL Web Development
Format: B5, stron: 784
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
Tworzenie dynamicznych witryn WWW za pomoc¹ technologii open source
• Zainstaluj i skonfiguruj serwery oraz narzêdzia
Po³¹cz aplikacjê internetow¹ z baz¹ danych
Napisz samodzielnie system zarz¹dzania treœci¹ witryny
PHP, Apache i MySQL to najpopularniejsze obecnie technologie s³u¿¹ce do tworzenia
i udostêpniania w sieci dynamicznych witryn WWW. £¹czy je jedna wspólna cecha —
wszystkie dostêpne s¹ na licencji open source, co oznacza, ¿e korzystanie z nich nie
wi¹¿e siê z ¿adnymi op³atami. PHP to jêzyk programowania s³u¿¹cy do pisania aplikacji
internetowych, MySQL to baza danych, która przechowuje informacje wyœwietlane
na stronach, a Apache to serwer WWW, dziêki któremu witryny te dostêpne s¹
w internecie. Za pomoc¹ tych narzêdzi tworzone s¹ portale, sklepy internetowe,
fora dyskusyjne i inne strony, z których codziennie korzystaj¹ dziesi¹tki tysiêcy
u¿ytkowników sieci.
„PHP5, Apache i MySQL. Od podstaw” to podrêcznik dla tych u¿ytkowników, którzy
chc¹ poznaæ sposoby tworzenia dynamicznych witryn WWW w oparciu o te
technologie. Przedstawia zasady pisania aplikacji internetowych, stosowania w nich
formularzy z mechanizmem weryfikacji poprawnoœci wpisanych danych, ³¹czenia
aplikacji z baz¹ danych i modyfikowania elementów graficznych za pomoc¹ PHP.
Opisano tu tak¿e sposoby przechowywania danych u¿ytkownika w plikach cookie,
mechanizmy wysy³ania poczty elektronicznej, obs³ugi b³êdów i ograniczania dostêpu
do okreœlonych obszarów witryny za pomoc¹ nazwy u¿ytkownika i has³a. Ka¿de
zagadnienie zaprezentowano na rzeczywistych przyk³adach dynamicznych witryn WWW.
Instalacja i konfiguracja Apache, PHP i MySQL-a
Podstawowe elementy jêzyka PHP
Komunikacja z baz¹ danych
Wyœwietlanie oraz modyfikowanie danych
Obs³uga formularzy i weryfikacja poprawnoœci wpisów
Korzystanie z elementów graficznych i zastosowanie biblioteki GD
Obs³uga b³êdów
Komunikacja za pomoc¹ poczty elektronicznej
Mechanizmy logowania i personalizacji serwisu
System zarz¹dzania treœci¹ serwisu WWW
Lista mailingowa i forum dyskusyjne
Elementy sklepu internetowego
Analiza ruchu w witrynie WWW za pomoc¹ statystyk
Poznaj najnowsze technologie tworzenia dynamicznych witryn WWW
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
119562168.001.png 119562168.002.png 119562168.003.png 119562168.004.png
Spis treści
O autorach ................................................................................................................................................. 11
Część I Wstęp
13
Rozdział 1. Instalacja i konfiguracja ....................................................................................................... 15
Projekty zawarte w książce ............................................................................................ 15
Krótkie wprowadzenie do PHP, Apache, MySQL-a i wolnego oprogramowania .................... 16
Krótka historia inicjatywy open source ...................................................................... 16
Dlaczego wolne oprogramowanie tak kusi? ............................................................... 17
Jak współgrają ze sobą różne elementy systemu AMP? ................................................... 17
Apache .................................................................................................................. 18
PHP ....................................................................................................................... 19
MySQL ................................................................................................................... 19
Instalacje AMP ....................................................................................................... 20
Konfiguracja serwera Apache ........................................................................................ 21
Testowanie instalacji .............................................................................................. 21
Dostosowanie instalacji .......................................................................................... 22
Konfiguracja instalacji PHP ........................................................................................... 25
Testowanie instalacji .............................................................................................. 26
Dostosowanie instalacji .......................................................................................... 26
Konfiguracja PHP5, aby używał MySQL-a ................................................................... 28
Konfiguracja instalacji MySQL-a ..................................................................................... 28
Testowanie instalacji .............................................................................................. 28
Konfiguracja instalacji ............................................................................................. 30
Gdzie szukać pomocy lub cennych zasobów? ................................................................. 36
Pomoc związana z programami ................................................................................ 37
Źródłowe strony WWW ............................................................................................. 37
Podsumowanie ............................................................................................................ 37
 
4
PHP5, Apache i MySQL. Od podstaw
Część II Witryna recenzji filmów
39
Rozdział 2. Tworzenie stron w PHP5 ...................................................................................................... 41
Omówienie struktury i składni języka PHP ....................................................................... 42
Jak kod PHP umieszcza się w kodzie HTML? ............................................................. 42
Zasady składni języka PHP ...................................................................................... 42
Techniki kodowania są niezmiernie ważne ................................................................ 43
Pierwszy program ......................................................................................................... 45
Wykorzystanie HTML-a do uatrakcyjnienia stron .............................................................. 46
Integracja HTML-a z PHP .......................................................................................... 47
Rozważania na temat kodu HTML w sekcjach PHP ..................................................... 48
Wykorzystanie zmiennych i stałych ................................................................................ 49
Stałe ..................................................................................................................... 49
Zmienne ................................................................................................................ 50
Przekazywanie zmiennych między stronami .................................................................... 53
Kilka słów na temat register_globals ........................................................................ 53
Przekazywanie zmiennych za pomocą adresu URL ..................................................... 54
Przekazywanie zmiennych przy użyciu sesji ................................................................ 58
Przekazywanie zmiennych za pomocą cookies ........................................................... 61
Przekazywanie informacji za pomocą formularzy ........................................................ 64
Instrukcja if-else .......................................................................................................... 68
Korzystanie z instrukcji if ......................................................................................... 69
Wykorzystanie instrukcji if-else ................................................................................. 71
Dołączanie plików w celu zwiększenia elastyczności ....................................................... 72
Wykorzystanie funkcji do zwiększenia efektywności kodu ................................................. 74
Wszystko o tablicach .................................................................................................... 78
Składnia tablic ....................................................................................................... 79
Sortowanie tablic .................................................................................................... 80
Konstrukcja foreach ................................................................................................ 81
Pętla while .................................................................................................................. 86
Alternatywna składnia języka PHP .................................................................................. 89
Alternatywy dla znaczników <?php i ?> ..................................................................... 89
Alternatywy dla polecenia echo ................................................................................ 89
Alternatywa dla operatorów logicznych ...................................................................... 90
Alternatywy dla cudzysłowów składnia heredoc ..................................................... 90
Alternatywy dla inkrementacji i dekrementacji wartości .............................................. 90
Sny o programowaniu obiektowym ................................................................................. 91
Krótki przykład programowania obiektowego ............................................................. 91
Dlaczego warto programować obiektowo? ................................................................. 93
Podsumowanie ............................................................................................................ 93
Ćwiczenia .................................................................................................................... 94
Rozdział 3. Korzystanie z bazy danych z poziomu języka PHP .............................................................95
Omówienie struktury i składni bazy danych MySQL .......................................................... 96
Struktura MySQL-a .................................................................................................. 96
Składnia i polecenia MySQL-a ................................................................................ 103
Jak PHP kontaktuje się z MySQL-em? .......................................................................... 103
Łączenie się z serwerem MySQL ................................................................................. 104
Spojrzenie na gotową bazę danych .............................................................................. 105
Spis treści
5
Odpytywanie bazy danych ........................................................................................... 110
Klauzula WHERE ................................................................................................... 111
Tablice danych w PHP wykorzystanie konstrukcji foreach ..................................... 113
Łączenie tabel ...................................................................................................... 116
Użyteczne wskazówki i sugestie .................................................................................. 120
Dokumentacja ...................................................................................................... 120
Wykorzystanie systemu phpMyAdmin ...................................................................... 120
Podsumowanie .......................................................................................................... 121
Ćwiczenia .................................................................................................................. 121
Rozdział 4. Wyświetlanie danych w PHP .............................................................................................. 123
Tworzenie tabeli HTML ............................................................................................... 123
Wypełnienie tabeli ...................................................................................................... 126
Związek nadrzędny-podrzędny ...................................................................................... 132
Odczytanie recenzji .................................................................................................... 140
Podsumowanie .......................................................................................................... 145
Ćwiczenia .................................................................................................................. 145
Rozdział 5. Elementy formularzy wprowadzanie danych przez użytkownika ............................. 147
Pierwszy formularz ..................................................................................................... 148
Element FORM ..................................................................................................... 150
Element INPUT ..................................................................................................... 151
Przetwarzanie formularza ....................................................................................... 152
Nakierowanie na właściwe odpowiedzi ......................................................................... 153
Pole przełącznika i lista rozwijana .......................................................................... 156
Jeden formularz, wiele wykonywanych działań ......................................................... 156
Przyciski opcji ....................................................................................................... 159
Wiele przycisków wysyłania .................................................................................... 160
Proste testowanie danych wejściowych ................................................................... 160
Dynamiczny tytuł strony ......................................................................................... 161
Potraktowanie ciągu znaków jako tablicy w celu zmiany wielkości pierwszej litery tekstu .... 161
Operator trójargumentowy ..................................................................................... 161
Połączenie wszystkich elementów formularzy ................................................................ 162
Główny skrypt ....................................................................................................... 169
Domyślna odpowiedź ............................................................................................ 169
Dodawanie elementów .......................................................................................... 170
Podsumowanie .......................................................................................................... 171
Ćwiczenia .................................................................................................................. 171
Rozdział 6. Umożliwienie użytkownikowi modyfikacji bazy danych ................................................... 173
Przygotowanie pola bitwy ............................................................................................ 174
Wstawienie prostego rekordu za pomocą systemu phpMyAdmin .................................... 176
Wstawianie rekordu w relacyjnej bazie danych .............................................................. 179
Usuwanie rekordu ...................................................................................................... 185
Edycja danych rekordu ................................................................................................ 190
Podsumowanie .......................................................................................................... 197
Ćwiczenie .................................................................................................................. 197
Rozdział 7. Praca z obrazami ............................................................................................................... 199
Korzystanie z biblioteki GD ......................................................................................... 199
Jakie typy plików obsługuje tandem GD i PHP? ........................................................ 200
Kompilacja PHP z obsługą GD ................................................................................ 200
6
PHP5, Apache i MySQL. Od podstaw
Umożliwienie umieszczania obrazów na serwerze WWW przez użytkowników ................... 201
Konwersja obrazu na inny format ................................................................................. 208
Czerń i biel ................................................................................................................ 213
Dodanie napisów ....................................................................................................... 220
Dodawanie znaków wodnych i łączenie obrazów ............................................................ 223
Tworzenie miniaturek ................................................................................................. 225
Podsumowanie .......................................................................................................... 229
Ćwiczenia .................................................................................................................. 230
Rozdział 8. Walidacja danych użytkownika ......................................................................................... 231
Użytkownicy są tylko użytkownikami ............................................................................. 231
Zastosowanie walidacji na witrynie z recenzjami filmów ................................................. 232
Zapominalscy ............................................................................................................ 233
Sprawdzanie błędów w formacie .................................................................................. 241
Podsumowanie .......................................................................................................... 252
Ćwiczenie .................................................................................................................. 252
Rozdział 9. Unikanie błędów i ich obsługa ........................................................................................... 253
W jaki sposób serwer Apache radzi sobie z błędami? ........................................................ 253
Dyrektywa ErrorDocument serwera Apache ............................................................. 254
Dyrektywa ErrorDocument zaawansowane strony błędów ..................................... 258
Obsługa błędów i tworzenie stron obsługi błędów w PHP ............................................... 261
Rodzaje błędów w języku PHP ................................................................................ 261
Generowanie błędów PHP ...................................................................................... 262
Inne sposoby obsługi błędów ...................................................................................... 269
Wyjątki ................................................................................................................. 270
Niespełnienie warunków ........................................................................................ 271
Błędy składniowe .................................................................................................. 272
Podsumowanie .......................................................................................................... 273
Ćwiczenia .................................................................................................................. 273
Część III Witryna fanów komiksów
275
Rozdział 10. Projektowanie i tworzenie bazy danych ........................................................................ 277
Zaczynamy ................................................................................................................ 277
Czym jest relacyjna baza danych? .......................................................................... 278
Klucze ................................................................................................................. 279
Związki ................................................................................................................ 280
Integralność więzów referencyjnych ........................................................................ 280
Normalizacja ........................................................................................................ 281
Projektowanie bazy danych ......................................................................................... 281
Wykonanie pierwszej tabeli .................................................................................... 281
Dlaczego właśnie postacie normalne? .................................................................... 285
Standaryzacja ....................................................................................................... 286
Uszczegółowienie projektu bazy danych .................................................................. 287
Utworzenie bazy danych w MySQL-u ............................................................................. 288
Tworzenie aplikacji postaci komiksowych ..................................................................... 292
Podsumowanie .......................................................................................................... 323
Ćwiczenia .................................................................................................................. 324
Zgłoś jeśli naruszono regulamin