php-i-mysql.-projekty-do-wykorzystania pełna wersja.pdf

(15771 KB) Pobierz
887719118.001.png
4
PHP i MySQL. Projekty do wykorzystania
Wywietlanie forów i wiadomoci ................................................................................... 60
Stronicowanie ......................................................................................................... 67
Awatary ....................................................................................................................... 69
BBCode ....................................................................................................................... 72
Podsumowanie ............................................................................................................ 75
Rozdzia 3. Lista dystrybucyjna ............................................................................................................. 77
Projekt listy dystrybucyjnej ............................................................................................ 77
Wybór serwera POP3 .................................................................................................... 78
Projekt bazy danych ...................................................................................................... 80
Kod ródowy i objanienia kodu .................................................................................... 80
Klient POP3 ............................................................................................................ 81
Plik konfiguracyjny ................................................................................................... 87
Zarzdzanie kontem ................................................................................................ 88
Przetwarzanie wiadomoci ....................................................................................... 94
Przetwarzanie wiadomoci z podsumowaniem ........................................................... 97
Konfiguracja listy dystrybucyjnej ..................................................................................... 98
Podsumowanie .......................................................................................................... 100
Rozdzia 4. Wyszukiwarka ....................................................................................................................103
Projekt wyszukiwarki ................................................................................................... 103
Problemy z wyszukiwaniem penotekstowym ................................................................. 104
Projekt bazy danych .................................................................................................... 106
Kod ródowy i objanienia kodu .................................................................................. 108
Interfejs administracyjny ........................................................................................ 108
Robot i indekser ................................................................................................... 114
Interfejs uytkownika ............................................................................................. 120
Podsumowanie .......................................................................................................... 126
Rozdzia 5. Osobisty kalendarz .............................................................................................................129
Projekt aplikacji .......................................................................................................... 129
Projekt bazy danych .................................................................................................... 131
Kod ródowy i objanienia kodu .................................................................................. 131
Widok miesiczny kalendarza ................................................................................. 132
Kalendarz w ukadzie dnia ...................................................................................... 136
Dodawanie i prezentowanie zdarze ....................................................................... 137
Wysyanie przypomnie .......................................................................................... 145
Eksport danych z kalendarza .................................................................................. 146
Podsumowanie .......................................................................................................... 150
Rozdzia 6. Meneder plików Ajax ........................................................................................................153
Projekt menedera plików Ajax .................................................................................... 153
JavaScript i Ajax ......................................................................................................... 155
Obiekt XMLHttpRequest ........................................................................................ 156
Kod ródowy i objanienia kodu .................................................................................. 159
Gówny interfejs .................................................................................................... 159
Funkcje dziaajce po stronie klienta ...................................................................... 163
Funkcje dziaajce po stronie serwera ..................................................................... 176
Podsumowanie .......................................................................................................... 191
Spis treci
5
Rozdzia 7. Album fotograficzny online .................................................................................................193
Projekt albumu fotograficznego online ............................................................................... 193
Kod ródowy i objanienia kodu .................................................................................. 194
Widoki .................................................................................................................. 194
Pliki pomocnicze ................................................................................................... 202
Miniatury QuickTime ................................................................................................... 206
Zapisywanie miniaturek w pamici podrcznej .............................................................. 208
Podsumowanie .......................................................................................................... 209
Rozdzia 8. Koszyk na zakupy .................................................................................................................211
Projekt koszyka na zakupy .......................................................................................... 211
Projekt bazy danych .................................................................................................... 212
Kod ródowy i objanienia kodu .................................................................................. 213
Klasa ShoppingCart .............................................................................................. 213
Sposób uycia koszyka na zakupy .......................................................................... 217
Interfejs uytkownika ............................................................................................. 225
Dodawanie produktów ........................................................................................... 233
Podsumowanie .......................................................................................................... 253
Rozdzia 9. Statystyki witryny internetowej ...................................................................................... 255
Zakres gromadzonych danych ...................................................................................... 255
Projekt bazy danych .................................................................................................... 256
Gromadzenie danych .................................................................................................. 258
Kod ródowy i objanienia kodu .................................................................................. 260
Wykres koowy ...................................................................................................... 261
Wykres supkowy ................................................................................................... 264
Raport .................................................................................................................. 268
Podsumowanie .......................................................................................................... 278
Rozdzia 10. System grup dyskusyjnych lub blogów ...........................................................................281
Tabele ....................................................................................................................... 282
Dodawanie wpisów ..................................................................................................... 283
Generowanie kanau RSS ............................................................................................ 294
Wywietlanie wpisów .................................................................................................. 298
Dodawanie komentarzy ............................................................................................... 300
Podsumowanie .......................................................................................................... 304
Rozdzia 11. Skrypty powoki ................................................................................................................ 307
Projekt skryptu ........................................................................................................... 308
Ogólne wskazówki dotyczce implementacji skryptów powoki ........................................ 309
Kod ródowy i objanienia kodu .................................................................................. 311
Klasa CommandLine ............................................................................................. 311
Skrypt startproject ................................................................................................ 320
Szkielet struktury ....................................................................................................... 329
Podsumowanie .......................................................................................................... 330
Rozdzia 12. Bezpieczestwo i rejestracja zdarze ............................................................................331
Cross-site scripting ..................................................................................................... 332
Przegldanie cieek .................................................................................................. 334
Wstrzykiwanie ............................................................................................................ 336
Wstrzykiwanie kodu jzyka SQL .............................................................................. 336
Wstrzykiwanie polece .......................................................................................... 340
6
PHP i MySQL. Projekty do wykorzystania
Sabe uwierzytelnianie ................................................................................................ 342
Rejestrowanie zdarze ................................................................................................ 344
Zapobieganie przypadkowemu usuniciu rekordów ........................................................ 346
Podsumowanie .......................................................................................................... 348
Skorowidz ............................................................................................................................................ 349
1
Rejestracja uytkowników
Umoliwienie rejestracji kont i logowania si przez uytkowników pozwala nadawa witry-
nom indywidualny charakter i udostpnia zawarto dostosowan do konkretnych oczekiwa.
Tego rodzaju mechanizm uwierzytelnienia jest centralnym punktem wielu witryn spoeczno-
ciowych i e-commerce. Ze wzgldu na tak du wag mechanizmów uwierzytelniania pierw-
sz prezentowan aplikacj jest system rejestracji uytkowników.
Gówn funkcj systemu jest umoliwienie uytkownikom tworzenia kont. Czonkowie sys-
temu musz poda adres poczty elektronicznej, który posuy do weryfikacji poprawnoci
rejestracji. Uytkownicy bd równie mogli zmienia hasa i uaktualnia adresy pocztowe,
a take resetowa hasa, gdy je zapomn. S to cakowicie standardowe funkcje, oczekiwane
przez uytkowników witryn internetowych.
Jeli chodzi o architektur, katalog przechowujcy kod ródowy powinien mie logiczn
struktur. Na przykad pliki pomocnicze i doczane powinny znajdowa si w innym katalogu
ni pliki dostpne publicznie. Ponadto dane na temat uytkowników powinny by przecho-
wywane w bazie danych. Poniewa na rynku dostpnych jest wiele narzdzi przeznaczonych
do przegldania i przetwarzania danych przechowywanych w relacyjnych bazach danych takich
jak MySQL, atwo jest zapewni przezroczysto i elastyczno rozwizania.
Plan struktury katalogów
W pierwszym kroku naley zaplanowa struktur katalogów aplikacji. Zaleca si utworzenie
trzech gównych folderów: public_files bdzie przechowywa wszystkie pliki dostpne publicz-
nie, w lib przechowywane bd pliki doczane, wspóuytkowane przez dowoln liczb
innych plików ródowych, w templates za znajd si pliki odpowiedzialne za prezentacj
stron. Cho PHP moe si odwoywa do plików pooonych w dowolnych lokalizacjach, ser-
wer WWW powinien udostpnia wycznie pliki z folderu public_files . Przechowywanie pli-
ków pomocniczych poza katalogiem udostpnianym publicznie zwiksza poziom bezpiecze-
stwa witryny.
Zgłoś jeśli naruszono regulamin