Flash_i_PHP5_Podstawy_flph5p.pdf

(622 KB) Pobierz
Flash i PHP5. Podstawy
IDZ DO
PRZYK£ADOW Y ROZDZIA£
Flash i PHP5.
SPIS TREœCI
Podstawy
KATALOG KSI¥¯EK
Autor: David Powers
T³umaczenie: Jaros³aw Dobrzañski, Renata Wójcicka
ISBN: 83-246-0185-6
Tytu³ orygina³ u: Foundation PHP5 for Flash
Format: B5, stron: 744
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
Od dawna Flash wykorzystywany jest do tworzenia efektownych, interaktywnych
witryn WWW i prezentacji internetowych. Jêzyk programowania Action Script,
znacznie rozbudowany w najnowszych wersjach tej aplikacji, umo¿liwia napisanie wielu
oryginalnych, ciekawych programów. Czasem jednak nawet tak olbrzymi potencja³,
jakim dysponuje Action Script, okazuje siê niewystarczaj¹cy. Co zrobiæ, gdy trzeba
siêgn¹æ do bazy danych znajduj¹cej siê na serwerze lub przechowaæ informacje o sesji?
Jak dynamicznie uaktualniaæ treœæ artyku³ów opublikowanych w witrynie? OdpowiedŸ
jest oczywista, trzeba siêgn¹æ po inne, rewelacyjne narzêdzie dla twórców stron WWW,
czyli duet PHP i MySQL — dostêpny nieodp³atnie w pe³ni obiektowy jêzyk
programowania oraz stabilna i wydajna baza danych.
Ksi¹¿ka „Flash i PHP5. Podstawy” to niezast¹piony poradnik dla tych u¿ytkowników
Flasha, którzy chc¹ „wycisn¹æ” z niego wiêcej, ni¿ oferuje Action Script. Czytaj¹c j¹,
nauczysz siê ³¹czyæ witryny WWW tworzone we Flashu ze skryptami PHP i baz¹
danych MySQL. Poznasz podstawy jêzyków PHP i SQL i dowiesz siê, jak skonfigurowaæ
œrodowisko pracy. Znajdziesz w niej informacje o mo¿liwoœciach wykorzystania PHP do
realizacji zadañ, których wykonanie za pomoc¹ jêzyka Action Script by³oby niemo¿liwe.
Te zadania to przetwarzanie danych wprowadzanych przez u¿ytkowników, zapisywanie
i odczytywanie informacji z bazy danych, zarz¹dzanie sesjami i tworzenie mechanizmu
zarz¹dzania treœci¹ serwisu.
Instalacja i konfiguracja œrodowiska
Wysy³anie danych z formularzy za pomoc¹ poczty elektronicznej
Obliczenia matematyczne w PHP
Przetwarzanie danych tekstowych
Tworzenie czytnika RSS
Praca z bazami MySQL i SQLite
Wprowadzanie informacji do bazy danych
Obs³uga sesji
System CMS oparty o bazê danych i XML
Wykorzystaj PHP i stwórz dynamiczne witryny WWW we Flashu
DODAJ DO KOSZYKA
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
ONOWOœCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Koœciuszki 1c
44-100 Gliwice
tel. 032 230 98 63
e-mail: helion@helion.pl
676260731.002.png 676260731.003.png 676260731.004.png 676260731.005.png
O autorze ......................................................................................... 9
O recenzencie technicznym ............................................................. 10
Podziękowania ................................................................................ 11
Wstęp ............................................................................................ 13
Rozdział 1. Przygotowania do pracy z PHP ........................................................ 21
Dostęp filmu Flasha do danych zewnętrznych .................................................................22
Wybór właściwej technologii ....................................................................................22
Co oferuje PHP, Apache oraz MySQL? ....................................................................24
Współpraca wszystkich elementów ...........................................................................25
PHP i ActionScipt: dalecy kuzyni ....................................................................................28
Instalowanie potrzebnego oprogramowania .....................................................................29
Instalacja w systemie Windows .................................................................................30
Instalacja w systemie Mac OS X ...............................................................................48
Konfiguracja środowiska ..................................................................................................60
Poznawanie możliwości PHP ...........................................................................................66
Rozdział 2. Pełne wykorzystanie możliwości Flasha ........................................... 69
Komunikacja z zewnętrznymi źródłami danych ..............................................................70
Pierwsze kroki w PHP ......................................................................................................76
Czy PHP nadaje się do tworzenia szaty graficznej strony? .......................................76
Podstawy składni PHP ...............................................................................................77
Wysyłanie formularza pocztą e-mail ................................................................................91
Czego się dowiedziałeś do tej pory ................................................................................110
Rozdział 3. Obliczenia i decyzje ...................................................................... 111
Dokonywanie obliczeń w PHP .......................................................................................112
Operatory arytmetyczne ...........................................................................................113
Wykonywanie obliczeń we właściwej kolejności ....................................................119
Składanie operatorów ...............................................................................................120
Mechanizmy decyzyjne w PHP ......................................................................................121
Użycie instrukcji if…else ........................................................................................121
Stosowanie operatorów porównania ........................................................................122
Testowanie więcej niż jednego warunku .................................................................124
Korzystanie z operatora xor .....................................................................................125
Korzystanie z negacji do testowania zaprzeczeń .....................................................126
676260731.001.png
4
Flash i PHP5. Podstawy
Użycie instrukcji switch w wielokrotnych warunkach ............................................127
Korzystanie z operatora warunkowego ....................................................................128
Aplikacja we Flashu — multikonwerter ........................................................................129
Planowanie skryptu przeliczającego ........................................................................129
Budowanie interfejsu we Flashu ..............................................................................135
Podsumowanie ...............................................................................................................151
Rozdział 4. Wokół ciągów znakowych ............................................................. 153
Przetwarzanie ciągów znakowych w PHP .....................................................................154
Jak w PHP wyświetla się ciągi znakowe? ................................................................154
Zmiana wielkości liter ..............................................................................................159
Praca z podciągami ..................................................................................................161
Uzyskiwanie podciągu ...................................................................................................165
Modularyzacja kodu przy użyciu funkcji .......................................................................168
Gdzie są uruchamiane funkcje PHP? .......................................................................168
Do czego mogą się przydać własne funkcje? ..........................................................169
Zasięg zmiennych w PHP i w ActionScripcie .........................................................170
Wartość zwracana przez funkcję .............................................................................172
Decydowanie o tym, gdzie umieścić funkcje ..........................................................174
Wykańczanie skryptu multikonwertera ..........................................................................174
Formatowanie głównych jednostek miar .................................................................175
Galony, pinty i litry ..................................................................................................175
Kilogramy, funty i kamienie ....................................................................................179
Metry, stopy i jardy ..................................................................................................180
Udoskonalanie projektu multikonwertera ................................................................182
Dalsze rozwijanie projektu ......................................................................................183
Przetwarzanie wejściowych danych użytkownika .........................................................184
Obcinanie początkowych i końcowych białych znaków .........................................184
Obcinanie znaczników HTML .................................................................................185
Usuwanie lewych ukośników ..................................................................................185
Korzystanie z wyrażeń regularnych do rozpoznawania wzorców ...........................186
Udoskonalanie aplikacji z formularzem oceniającym ...................................................191
Chwila odpoczynku ........................................................................................................195
Rozdział 5. Inteligentne wykorzystywanie tablic i pętli ..................................... 197
Podstawy korzystania z tablic oraz pętli ........................................................................198
Umieszczanie elementów w tablicy .........................................................................198
Grupowanie podobnych jednostek w tablicy wielowymiarowej .............................199
Korzystanie z pętli do wykonywania powtarzalnych zadań ....................................200
Tworzenie tablic w PHP .................................................................................................200
Tablice indeksowe: porządkowanie na podstawie numeru ......................................201
Tablice asocjacyjne: porządkowanie według nazw .................................................205
Długość tablicy: istota różnicy pomiędzy tablicami w PHP a w ActionScripcie ....209
Tablice wielowymiarowe, czyli zagnieżdżone ........................................................209
Łączenie w pętli powtarzających się zadań ....................................................................212
Przeglądanie tablicy za pomocą pętli foreach ..........................................................212
Pełne wykorzystywanie pętli ...................................................................................213
Najprostsze pętle: while oraz do ..............................................................................215
Kończenie działania pętli .........................................................................................216
Zagnieżdżanie pętli ..................................................................................................217
Bezpieczne przekazywanie danych w zmiennej $_POST ..............................................219
Dlaczego ustawienie register_globals jest tak istotne? ............................................221
Manipulowanie tablicami ...............................................................................................222
Dzielenie i łączenie tablic ........................................................................................222
Sortowanie tablic .....................................................................................................227
Spis treści
5
Budowanie czytnika wiadomości RSS ...........................................................................229
Do czego służy kanał RSS? .....................................................................................230
Analiza kanału RSS .................................................................................................231
Przetwarzanie kodu RSS w MagpieRSS ..................................................................233
Wyświetlenie w filmie Flasha połączonych kanałów RSS ......................................244
Usuwanie elementów HTML, których Flash nie potrafi zinterpretować ................250
Opublikowanie czytnika wiadomości w internecie .................................................251
Raport postępów .............................................................................................................252
Rozdział 6. PHP i bazy danych: poszerzanie aplikacji ....................................... 253
Dlaczego MySQL? .........................................................................................................254
Wady MySQL ..........................................................................................................254
Zalety MySQL .........................................................................................................255
Wybór właściwej wersji MySQL .............................................................................257
Wybór właściwej licencji oraz jej koszt ..................................................................259
SQLite jako alternatywa .................................................................................................260
Zalety SQLite ...........................................................................................................260
Wady SQLite ...........................................................................................................260
Wybór właściwego systemu baz danych .................................................................261
Instalacja MySQL w systemie Windows .......................................................................262
Zmiana domyślnego typu tabel w Windows Essentials ...........................................276
Ręczne uruchamianie oraz zatrzymywanie MySQL w systemie Windows ............278
Uruchamianie MySQL Monitor w systemie Windows ...........................................280
Konfiguracja MySQL w systemie Mac OS X ................................................................282
Praca z programem MySQL Monitor (Windows i Mac) ...............................................284
Utworzenie pierwszej bazy danych w MySQL ..............................................................285
Pobieranie danych z zewnętrznego pliku .................................................................295
Korzystanie z graficznego interfejsu MySQL ................................................................298
phpMyAdmin: złoty staruszek .................................................................................298
MySQL Administrator a MySQL Query Browser: inteligentne programy .............303
Co nas dalej czeka? ........................................................................................................305
Rozdział 7. Zabawa słowami ........................................................................... 307
Tworzenie elementów graficznych gry ..........................................................................308
Używanie PHP do komunikacji z bazą danych ..............................................................313
Klasa kopiująca działanie mysqli w dowolnej konfiguracji ....................................313
Korzystanie z obiektowego interfejsu mysqli ..........................................................314
Tworzenie klas PHP 5 i korzystanie z nich ....................................................................329
Nazywanie i deklarowanie klas ...............................................................................330
Tworzenie właściwości klasy ..................................................................................330
Użycie konstruktora .................................................................................................331
Tworzenie metod klasy ............................................................................................333
Dostęp do metod publicznych ..................................................................................333
Udoskonalanie wybierania słów poprzez zastosowanie SQL i PHP ..............................334
Tworzenie mechanizmu wyświetlającego liczbę punktów ............................................343
Wprowadzenie do klasy SharedObject Flasha .........................................................344
Inne sposoby na wzbogacenie gry ..................................................................................347
Obsługa błędów bazy danych ..................................................................................347
Ustawienie różnych poziomów gry .........................................................................351
SQLite: alternatywny system baz danych ......................................................................352
Podstawy SQLite .....................................................................................................352
Sprawdzenie, czy baza SQLite posiada odpowiednie uprawnienia .........................353
Dostosowywanie skryptu gry do bazy SQLite .........................................................363
Porównanie MySQL z SQLite .................................................................................364
Ciągle naprzód ................................................................................................................364
6
Flash i PHP5. Podstawy
Rozdział 8. Tworzenie bazy danych rejestrujących się użytkowników ................ 365
Różne rodzaje baz danych ..............................................................................................366
Jednopoziomowe bazy danych — najprostszy typ baz danych ...............................366
Elastyczność relacyjnych baz danych ......................................................................368
Różne formaty składowania danych MySQL ................................................................373
Wybór właściwego typu kolumny ..................................................................................374
Typy kolumn w MySQL ..........................................................................................375
Wartości domyślne oraz NULL ...............................................................................379
Wybór odpowiednich ustawień języka ....................................................................380
Tworzenie systemu rejestrowania użytkownika ............................................................381
Rejestrowanie użytkowników w MySQL ................................................................381
Co zrobić, gdy nie działa poprawnie? ......................................................................405
Chwila oddechu ..............................................................................................................406
Rozdział 9. Ochrona danych przy użyciu mechanizmu sesji ............................... 409
Śledzenie preferencji użytkownika za pomocą mechanizmu sesji PHP ........................410
Sieć jest środowiskiem bezstanowym ......................................................................410
W jaki sposób działa sesja? ......................................................................................412
Podstawy sesji PHP ..................................................................................................414
Korzystanie z mechanizmu sesji do ograniczania dostępu do strony ......................415
Inne zastosowania sesji ............................................................................................428
Podsumowanie ...............................................................................................................429
Rozdział 10. Sprawowanie kontroli
przy użyciu systemu nadzorującego zawartość bazy ........................ 431
Cztery podstawowe polecenia SQL ...............................................................................432
SELECT ...................................................................................................................432
INSERT ....................................................................................................................434
UPDATE ..................................................................................................................434
DELETE ..................................................................................................................435
Tworzenie prostego systemu kontrolowania zawartości bazy danych ...........................436
Tworzenie interfejsu aplikacji ..................................................................................436
Tworzenie skryptu aplikacji .....................................................................................444
Zabezpieczanie systemu zarządzania bazą danych ..................................................491
Dodawanie dodatkowej kolumny do tabeli ..............................................................493
Mamy już solidne podstawy ...........................................................................................495
Rozdział 11. Praca z datami ............................................................................. 497
Jak ActionScript, PHP oraz MySQL przetwarzają daty? ...............................................498
Niepoprawne znaczniki czasowe .............................................................................499
Tworzenie znacznika czasowego .............................................................................501
Formatowanie dat w PHP ...............................................................................................507
Praca z datami w MySQL ..............................................................................................510
Korzystanie z dat w obliczeniach ............................................................................510
Odnalezienie i utworzenie rekordów na podstawie tymczasowych kryteriów ........517
Przetwarzanie dat w danych wejściowych użytkownika ...............................................518
Formatowanie dat pobranych z danych wejściowych użytkownika ........................519
Sprawdzenie w PHP poprawności daty ...................................................................520
Tworzenie selektora daty we Flashu dla MySQL ....................................................522
Prawie u mety .................................................................................................................536
Rozdział 12. Korzystanie z wielu tabel i XML ..................................................... 537
Projektowanie struktury tabel .........................................................................................538
Ustalanie podstawowych wymagań .........................................................................538
Normalizacja tabel ...................................................................................................539
Zgłoś jeśli naruszono regulamin