Cyfroteka.pl

klikaj i czytaj online

Cyfro
Czytomierz
00528 009662 10437417 na godz. na dobę w sumie
Flash i XML. Techniki zaawansowane - książka
Flash i XML. Techniki zaawansowane - książka
Autor: , , Liczba stron: 456
Wydawca: Helion Język publikacji: polski
ISBN: 83-7197-657-7 Data wydania:
Lektor:
Kategoria: ebooki >> komputery i informatyka >> webmasterstwo >> xml i xslt - programowanie
Porównaj ceny (książka, ebook, audiobook).
Ta książka ukazuje nietypowe spojrzenie na specyficzną cechę Flasha 5 -- możliwość współpracy z językiem XML. Do zrozumienia jej treści przydatne jest opanowanie podstaw pracy z Flashem 5 i językiem programowania ActionScript.

Współpraca Flasha 5 z językiem XML daje ogromne możliwości, na których skoncentrujemy się w tej książce. Nie zakładamy, że miałeś wcześniej jakikolwiek kontakt z językiem XML. W pierwszych rozdziałach omówiono elementarne zagadnienia związane z tym językiem.

Integralną częścią książki jest praktyczne studium, którego części prezentujemy w kolejnych rozdziałach. Śledząc ich treść, szybko zdobędziesz umiejętności potrzebne do wykorzystania wszechstronnych zastosowań języka XML we Flashu. W dalszych rozdziałach zawartość studium odejdzie nieco od treści rozdziałów, lecz nie przejmuj się -- przez cały czas będziesz zdobywał nową wiedzę i umiejętności, dzięki którym będziesz mógł tworzyć interesujące aplikacje, korzystające z technologii Flash XML.

W ostatnich trzech rozdziałach zaprezentujemy prawdziwie dynamiczne zastosowania, możliwe wówczas, gdy aplikacje porzucają ograniczenia pojedynczego komputera i zaczynają działać w sieci. Korzystaj bez ograniczeń z prezentowanych przykładów i adaptuj je do własnych potrzeb. Poznaj pasjonujące możliwości współpracy języka XML i Flasha.

Znajdź podobne książki Ostatnio czytane w tej kategorii

Darmowy fragment publikacji:

Flash i XML. Techniki zaawansowane Ian Tindale, Paul Macdonald, James Rowley Flash XML StudioLab Tytu‡ orygian‡u: Autorzy: T‡umaczenie: Marek Binkowski ISBN: 83-7197-657-7 Format: B5 Stron: 452 Ta ksi„¿ka ukazuje nietypowe spojrzenie na specyficzn„ cechŒ Flasha 5 (cid:151) mo¿liwo(cid:156)(cid:230) wsp(cid:243)‡pracy z jŒzykiem XML. Do zrozumienia jej tre(cid:156)ci przydatne jest opanowanie podstaw pracy z Flashem 5 i jŒzykiem programowania ActionScript. Wsp(cid:243)‡praca Flasha 5 z jŒzykiem XML daje ogromne mo¿liwo(cid:156)ci, na kt(cid:243)rych skoncentrujemy siŒ w tej ksi„¿ce. Nie zak‡adamy, ¿e mia‡e(cid:156) wcze(cid:156)niej jakikolwiek kontakt z jŒzykiem XML. W pierwszych rozdzia‡ach om(cid:243)wino elementarne zagadnienia zwi„zane z tym jŒzykiem. Integraln„ czŒ(cid:156)ci„ ksi„¿ki jest praktyczne studium, kt(cid:243)rego czŒ(cid:156)ci prezentujemy w kolejnych rozdzia‡ach. (cid:140)ledz„c ich tre(cid:156)(cid:230), szybko zdobŒdziesz umiejŒtno(cid:156)ci potrzebne do wykorzystania wszechstronnych zastosowaæ jŒzyka XML we Flashu. W dalszych rozdzia‡ach zawarto(cid:156)(cid:230) studium odejdzie nieco od tre(cid:156)ci rozdzia‡(cid:243)w, lecz nie przejmuj siŒ (cid:151) przez ca‡y czas bŒdziesz zdobywa‡ now„ wiedzŒ i umiejŒtno(cid:156)ci, dziŒki kt(cid:243)rym bŒdziesz m(cid:243)g‡ tworzy(cid:230) interesuj„ce aplikacje, korzystaj„ce z technologii Flash XML. W ostatnich trzech rozdzia‡ach zaprezentujemy prawdziwie dynamiczne zastosowania, mo¿liwe w(cid:243)wczas, gdy aplikacje porzucaj„ ograniczenia pojedynczego komputera i(cid:160) zaczynaj„ dzia‡a(cid:230) w sieci. Korzystaj bez ograniczeæ z prezentowanych przyk‡ad(cid:243)w i(cid:160) adaptuj je do w‡asnych potrzeb. Poznaj pasjonuj„ce mo¿liwo(cid:156)ci wsp(cid:243)‡pracy jŒzyka XML i Flasha. IDZ DO IDZ DO PRZYK£ADOWY ROZDZIA£ PRZYK£ADOWY ROZDZIA£ SPIS TRE(cid:140)CI SPIS TRE(cid:140)CI KATALOG KSI¥flEK KATALOG KSI¥flEK KATALOG ONLINE KATALOG ONLINE ZAM(cid:211)W DRUKOWANY KATALOG ZAM(cid:211)W DRUKOWANY KATALOG TW(cid:211)J KOSZYK TW(cid:211)J KOSZYK DODAJ DO KOSZYKA DODAJ DO KOSZYKA CENNIK I INFORMACJE CENNIK I INFORMACJE ZAM(cid:211)W INFORMACJE ZAM(cid:211)W INFORMACJE O NOWO(cid:140)CIACH O NOWO(cid:140)CIACH ZAM(cid:211)W CENNIK ZAM(cid:211)W CENNIK CZYTELNIA CZYTELNIA FRAGMENTY KSI¥flEK ONLINE FRAGMENTY KSI¥flEK ONLINE Wydawnictwo Helion ul. Chopina 6 44-100 Gliwice tel. (32)230-98-63 e-mail: helion@helion.pl O Autorach ...................................................h...................................................h........... 10 Wstęp ...................................................h...................................................h.................... . 11 Konwencje typograficzne ...................................................y.................................................. 11 Pliki na FTP ...................................................y...................................................y............. ....... 13 Wydawca oryginału ...................................................y...................................................y........13 Rozdział 1. Wprowadzenie do języka XML...................................................h.......... 15 XML — co, gdzie, kiedy, dlaczego? ...................................................y................................. 16 Odpowiedni język do odpowiednich zastosowań ...................................................j........................17 Rodzinne powiązania ...................................................j...................................................j................17 Reguły poprawności składniowej dokumentu XML ...................................................y......... 19 Domykanie elementów...................................................j...................................................j..............21 Elementy nie zachodzą na siebie...................................................j..................................................21 Komentarze ...................................................j...................................................j...............................21 Wartości atrybutów umieszczamy w cudzysłowach ...................................................j....................22 Atrybuty czy dane?...................................................j...................................................j....................22 Nazwy elementów ...................................................j...................................................j.....................23 Parsowanie węzłów...................................................y...................................................y........ . 23 Reprezentacje rzeczywistości...................................................j.......................................................24 Rodzice i dzieci ...................................................j...................................................j.........................25 Dokument XML poprawny strukturalnie — co to takiego?................................................. 28 Dlaczego HTML to nie to samo co XML? ...................................................y........................ 29 Dlaczego warto oddzielić sposób prezentacji od jej zawartości?...................................................j.29 Jak rozwiązano tę kwestię w języku XML?...................................................j.................................31 Historia znaczników..................................y...................................................y......................... 33 Historia się powtarza ...................................................j...................................................j.................35 Od SGML do XML ...................................................j...................................................j...................35 Logika zbudowana ze słów ...................................................j...................................................j.......36 Co to znaczy „aplikacja XML”? ...................................................j..................................................37 Dane a dokument...................................................j...................................................j.......................38 Pliki XML jako bazy danych............................j...................................................j............................39 Zamęt z oprogramowaniem pośredniczącym...................................................j...............................39 Zupełnie nowy język ...................................................j...................................................j.................40 Dziedzina, w której się specjalizujesz...................................................j..........................................41 Uważnie dobieraj słowa ...................................................j...................................................j............41 Jakie jest znaczenie słów? ...................................................j............................................................42 Studium — karty tarota...................................................y...................................................y...43 4 Flash i XML. Techniki zaawansowane Talia kart..........................................j...................................................j.............................................43 Gramy pełną talią ...................................................j...................................................j......................45 Podzielone opinie ...................................................j...................................................j......................46 Spróbujmy inaczej...................................................j...................................................j.....................47 Rozdział 2. Model dokumentu XML ...................................................h..................... 51 Potrzebny drwal — od zaraz ...................................................j........................................................51 Węzły...............................................j...................................................j.............................................52 Szczyt drzewa...................................................j...................................................j............................53 Chodzimy po drzewie...................................................j...................................................j................54 Jak radzić sobie z białymi znakami? ...................................................j............................................57 Dlaczego musimy chodzić po drzewie ...................................................y.............................. 59 Polowanie na węzeł ...................................................j...................................................j...................59 Jak się poruszać...................................................j...................................................j.........................61 W stylu arkusza ...................................................j...................................................j.........................62 Jak zapamiętać informację?...................................................j..........................................................66 Zostawić po sobie ślad ...................................................j...................................................j..............67 Odbudowywanie drzew...................................................j...................................................j.............68 Myśl lokalnie...................................................j...................................................j.............................68 Studium — karty tarota...................................................y...................................................y...69 Nowe spojrzenie...................................................j...................................................j........................71 Wygląd kart ...................................................j...................................................j...............................74 Opiszmy to ...................................................j...................................................j................................75 Zbliżają się i oddalają...................................................j...................................................j................76 Przełóż talię, wybierz kartę ...................................................j..........................................................77 Pokaż się i idź na miejsce...................................................j.............................................................79 Układ grafiki na karcie ...................................................j...................................................j..............82 Rozdział 3. Parsowanie XML...................................................h................................. 85 Parsowanie XML ......................................y...................................................y........................ . 85 Zainstaluj i uruchom...................................................j...................................................j..................86 Pan i serwer ...................................................j...................................................j...............................87 Poznajemy obiektowy model dokumentu ...................................................j....................................88 Inne obiektowe modele dokumentów...................................................j...........................................89 Model DOM we Flashu...................................................j...................................................j.............90 Co by było bez modelu DOM?..............................j...................................................j.......................91 Oto analogia ...................................................j...................................................j..............................92 SAX...................................................j...................................................j...........................................93 Przekształcanie kodu XML po stronie serwera...................................................j............................94 Rekonstrukcja dokumentu XML ...................................................j..................................................95 Kanoniczny dokument XML ...................................................y............................................. 95 Nazwy takie jak w modelu DOM...................................................j.................................................97 Ścieżka dokądkolwiek...................................................j...................................................j...............97 Jeszcze raz — co to są węzły? ...................................................y......................................... 101 Na którym poziomie jesteśmy? ...................................................j..................................................103 Studium — karty tarota...................................................y...................................................y. 104 Rysowanie obrazków ...................................................j...................................................j..............104 Spis treści 5 Słowa kluczowe...................................................j...................................................j.......................106 Co zamierzamy? ...................................................j...................................................j......................106 Mniejsze, płaskie drzewo ...................................................j...................................................j........108 Stan przed i po konwersji ...................................................j...................................................j........109 Rozdział 4. Dane XML...................................................h.......................................... 111 Element czy atrybut?.................................y...................................................y.......................111 Co przemawia za elementem...................................................j...................................................j...111 Co przemawia za atrybutem ...................................................j...................................................j....111 Dobre atrybuty...................................................j...................................................j.........................113 Wracamy do elementu...................................................j...................................................j.............115 Szeregowanie ...................................................y...................................................y................ 116 Składowanie ...................................................j...................................................j............................117 Transmisja ...................................................j...................................................j...............................118 Opakowywanie...................................................j...................................................j........................118 Bazy danych raz jeszcze...................................................j...................................................j..........118 Obiekty danych ...................................................y...................................................y............. 119 Jak maszyna z maszyną...................................................j...................................................j...........120 Zdalne wywoływanie procedur ...................................................j..................................................120 RPC i Internet...................................................j...................................................j..........................121 Poznajemy SOAP...................................................y...................................................y.......... 122 Wiadomości SOAP ...................................................j...................................................j.................122 Protokoły i specyfikacje ...................................................j...................................................j..........123 Jakieś zapytania? ...................................................j...................................................j.....................124 Typy danych w SOAP...................................................j...................................................j.............124 Alice, AIML i sztuczna inteligencja ...................................................y................................ 125 Alice ...................................................j...................................................j........................................125 Studium — karty tarota...................................................y...................................................y. 132 Konwersja...................................................j...................................................j................................133 Rozdział 5. Integracja Flasha z aplikacjami sieciowymi ...................................... 137 Flash zmienia reguły ...................................................j...................................................j...............138 Powrót do korzeni ...................................................j...................................................j...................138 Struktura wizualna...................................................j...................................................j...................139 Gdzie jest miejsce dla Flasha ...................................................j.....................................................141 Jak Flash radzi sobie z językiem XML? ...................................................j....................................141 Skąd pomysł na XML we Flashu? ...................................................j.............................................142 Lecz dlaczego XML? ...................................................j...................................................j..............144 Co Flash może zrobić z dokumentem XML?...................................................j.............................145 Integracja Flasha z aplikacjami sieciowymi...................................................j...............................145 Pobieranie i wysyłanie danych ...................................................j...................................................146 Nieświadomość stanu...................................................j...................................................j..............147 Metody GET i POST we Flashu ...................................................j................................................148 Kodowanie URL ...................................................j...................................................j.....................149 Akcja getURL..........................................j...................................................j...................................150 Akcja loadMovie ...................................................j...................................................j.....................151 Jeszcze dokładniej, co Flash może zrobić z dokumentem XML? ...................................... 151 Co to jest obiekt?...................................................j...................................................j.....................152 Nowe obiekty ...................................................j...................................................j..........................153 6 Flash i XML. Techniki zaawansowane Części całości...................................................y...................................................y........... Co to jest klasa?...................................................j...................................................j.......................153 Co to jest konstruktor? ...................................................j...................................................j............154 Co to jest klonowanie? ...................................................j...................................................j............155 ..... 155 Argumenty...................................................j...................................................j...............................156 Właściwości...........................................j...................................................j.....................................156 Metody ...................................................j...................................................j....................................158 Detektory zdarzeń...................................j...................................................j....................................159 Studium — karty tarota...................................................y...................................................y. 160 Ludzie są ludźmi ...................................................j...................................................j.....................161 Grafiki stanowisk w małych arkanach ...................................................j.......................................161 Grafiki kolorów w małych arkanach ...................................................j..........................................162 Wielkie arkana...................................................j...................................................j.........................164 Percepcja ...................................................y...................................................y....................... 165 Rozdział 6. ActionScript i XML...................................................h........................... 167 Ciągi znaków...................................................j...................................................j...........................167 Konkatenacja ...................................................j...................................................j...........................168 Porównanie...................................................j...................................................j..............................169 Indeksowanie...................................................j...................................................j...........................170 Podciągi...................................................j...................................................j...................................170 Parsowanie liczb.....................................j...................................................j....................................173 Studium — karty tarota...................................................y...................................................y. 173 Znaleźć kolor...................................................j...................................................j...........................174 Wyniki...................................................j...................................................j.....................................177 Sprawdzanie dzieci...................................................j...................................................j..................181 Odnajdywanie arkanów...................................................j...................................................j...........184 Rozdział 7. Metody obiektu XML...................................................h........................ 201 Właściwości klonów....................................j...................................................j...............................201 Właściwości obiektu MovieClip ...................................................j................................................202 Metody obiektu MovieClip ...................................................j...................................................j.....203 Jak działają konstruktory...................................................j...................................................j.........204 Metody i właściwości w obiekcie XML...................................................j.....................................205 Przydatna pętla for in ...................................................j...................................................j..............206 Właściwości związane z węzłami...................................................y.................................... 207 Studium — karty tarota...................................................y...................................................y. 209 Usuwanie obiektu XML ...................................................j...................................................j..........210 Czy to rzeczywiście losowanie?...................................................j.................................................211 Po co dodatkowa zmienna magicNumber? ...................................................j................................213 Dynamiczne pola tekstowe...................................................j...................................................j......214 Zmienna pickACard ...................................................j...................................................j................219 Jakie arkana? ...................................................j...................................................j...........................220 Wyszukiwanie elementu połóż ...................................................j..............................................224 Wyszukiwanie elementów x i y ...................................................j.........................................229 Rozdział 8. Pobieranie i przesyłanie danych XML ............................................... 233 Odtwarzacz Flasha nie potrafi zapisywać plików ...................................................j......................234 Tunele i protokół HTTP ...................................................j...................................................j..........235 SOAP...................................................j...................................................j.......................................237 Spis treści 7 Interfejs edycyjny ...................................................j...................................................j....................237 Studium — karty tarota...................................................y...................................................y. 239 Symbole z tłem kart...................................................j...................................................j.................239 Karty na stół ...................................................j...................................................j............................245 Główna funkcja ...................................................j...................................................j.......................248 Tablica nadziei ...................................................j...................................................j........................251 Podglądamy działanie utworzonych funkcji ...................................................j..............................252 Wszystko zależy od kart...................................................j...................................................j..........258 Rozdział 9. Zgłębiamy obiekt XML...................................................h..................... 263 Dlaczego obiekty są tak ważne?...................................................j.................................................263 Kiedy warto? ...................................................j...................................................j...........................264 Praca z czarnymi skrzynkami...................................................j.....................................................265 Właściwość prototype ...................................................j...................................................j.............265 Szczegółowe omówienie pozostałych elementów obiektu XML..................................................266 Studium — karty tarota...................................................y...................................................y. 272 Konstruktor...................................................j...................................................j..............................273 Losowanie liczby...................................................j...................................................j.....................273 Dlaczego to robimy? ...................................................j...................................................j...............275 Rozdział 10. Detektory zdarzeń ...................................................h........................... 279 Stany...................................................j...................................................j........................................279 Bit po bicie ...................................................j...................................................j..............................280 Był sobie język Forth ...................................................j...................................................j..............281 Programowanie zorientowane na zdarzenia ...................................................j...............................282 Sekwencje i klatki ...................................................j...................................................j...................282 Spuśćmy psy...................................................j...................................................j............................284 Obiekt XML ...................................................j...................................................j............................284 Obiekt XMLSocket ...................................................j...................................................j.................286 Studium — karty tarota...................................................y...................................................y. 287 Szukamy właściwych słów...................................................j...................................................j......287 Teraz kod...................................................j...................................................j.................................293 Układanie zdań ...................................................j...................................................j........................298 Omówienie funkcji displayKeywords() ...................................................j.....................................300 Mamy zestawy słów kluczowych...................................................j...............................................303 Tasowanie słów ...................................................j...................................................j.......................305 Puste elementy...................................................j...................................................j.........................308 Przeglądanie pliku ...................................................j...................................................j...................310 Rozdział 11. Gniazda XML ...................................................h.................................. 321 Do czego mogę użyć serwera XML? ...................................................j.........................................322 Prosty serwer pogawędek ...................................................y................................................ 323 Poszerzanie możliwości ...................................................y...................................................y 333 Flash ...................................................j...................................................j........................................333 Strona serwera ...................................................j...................................................j.........................336 Uwagi dotyczące pokoju pogawędek ...................................................y.............................. 338 A teraz coś z zupełnie innej beczki...................................................y.................................. 339 Po stronie Flasha ...................................................j...................................................j.....................340 Po stronie serwera ...................................................j...................................................j...................343 Rozdział 12. Flash, XML i bazy danych...................................................h.............. 347 8 Flash i XML. Techniki zaawansowane Flash ...................................................y...................................................y.................... Bazy danych...................................................y...................................................y.................. 348 Pierwsze polecenia SQL...................................................j...................................................j..........350 Szafa grająca.........................................j...................................................j......................................351 Tworzenie skryptów po stronie serwera ...................................................y.......................... 355 Jak zainstalować PHP...................................................j...................................................j..............356 Współpraca MySQL, PHP i Apache ...................................................j..........................................357 .......... 359 Nasz pierwszy plik PHP...................................................j...................................................j..........360 Łączenie skryptu z bazą danych ...................................................y...................................... 363 Generowanie kodu XML ...................................................y................................................. 367 Generowanie kodu XML na podstawie bazy danych ...................................................y...... 368 Jak dotrzeć do informacji? ...................................................j.........................................................369 Czytanie drzewa XML ...................................................j...................................................j............371 Rozwiązywanie problemów ...................................................j...................................................j....372 Rozdział 13. Nowe kierunki...................................................h.................................. 375 Przykład pierwszy — aktualności...................................................y.................................... 376 Przykład drugi — arkusze Excela...................................................y.................................... 378 Przykład trzeci — czytanie katalogu ...................................................y............................... 384 Końcowe przemyślenia...................................................y...................................................y. 384 Konkluzja ...................................................j...................................................j................................385 Dodatek A DTD, schematy i XSL ...................................................h........................ 387 Co to jest DTD ...................................................j...................................................j........................387 Co to jest schemat i jaka jest różnica ...................................................j.........................................389 Jaka jest różnica w składni ...................................................j.........................................................389 Jakie są zalety schematów...................................................j...................................................j.......390 Dlaczego mielibyśmy potrzebować schematu lub DTD ...................................................j............391 Prosty przykład definicji DTD ...................................................j...................................................392 Prosty przykład schematu...................................................j...................................................j........394 Przestrzenie nazw...................................................y...................................................y.......... 395 Wróćmy do schematu...................................................j...................................................j..............396 ........ 399 Jaka jest różnica pomiędzy formatem XSL a XSLT...................................................j..................399 Przekształcenia ...................................................j...................................................j........................399 Inna klasa...................................................j...................................................j.................................405 Obiekty formatujące..................................y...................................................y.......................406 Bloki, wiersze i coś jeszcze...................................................j........................................................407 XSLT...................................................y...................................................y..................... Dodatek B Wprowadzenie do języka Perl...................................................h........... 409 Pierwsze kroki...................................................y...................................................y........... .... 410 Podstawy języka Perl ...................................................y...................................................y.... 411 Zmienne w języku Perl...................................................j...................................................j............412 Operatory...................................................j...................................................j.................................413 Operatory tekstowe..................................j...................................................j...................................414 Spis treści 9 Sterowanie wykonywaniem skryptu ...................................................j..........................................415 Warunki złożone.......................................j...................................................j..................................417 Pętle...................................................j...................................................j.........................................418 Praca z zewnętrznymi plikami ...................................................y......................................... 419 Perl i CGI ...................................................y...................................................y............... ....... 421 Podprogramy...................................................y...................................................y................. 422 Kilka użytecznych podprogramów...................................................j.............................................424 Moduły ...................................................y...................................................y.......................... 427 Konkluzja ...................................................y...................................................y...................... 427 Dodatek C Zasoby internetowe ...................................................h............................ 429 Społeczności flashowe ...................................................y...................................................y.. 429 Strony związane z serwerami ...................................................y.......................................... 430 Inne interesujące rozwiązania ...................................................y.......................................... 430 Samouczki...................................................y...................................................y..................... 431 Witryny dotyczące języka XML...................................................y...................................... 431 Dodatek D Polskie znaki ...................................................h....................................... 433 Flash 5 ...................................................y...................................................y.................. Dokumenty XML...................................................y...................................................y.......... 435 Skrypty serwera ...................................................y...................................................y............ 435 Konwerter ...................................................y...................................................y..................... 436 ......... 433 Skorowidz...................................................h...................................................h............ 439 Gdy tworzysz witryny internetowe we Flashu, prędzej czy później będziesz zmuszony do komunikacji z bazami danych. Obawiam się, że przed tym nie ma ucieczki. Jeśli jesteś podobny do mnie, pewnie myślisz, że programowanie baz danych jest niesamowicie nudnym procesem, sprawiającym radość jedynie zarośniętym guru, bawiącym się gigan- tycznymi serwerami. Przyszedł jednak moment w mojej karierze, gdy szybko zmieniłem zdanie. Być może nadszedł czas, byś i ty je zmienił. Statyczne dokumenty, czy to w formacie HTML czy XML, po prostu nie nadają się do niektórych zastosowań sieciowych, wymagających wyświetlania dynamicznych, ciągle aktualizowanych materiałów. Niektórzy analitycy twierdzą, że Internet stopniowo staje się interfejsem dla materiałów, które zwykle są przecshowywane w bazach danych. Wiele witryn internetowych, które utworzysz w przyszłości, będzie wymagało zapa- miętania informacji wpisywanych przez użytkowników w bazie danych. Oczywiście później dane zapisane w bazie trzeba będzie w jakiś sposób wyświetlić — czyli popłyną w drugą stronę, do dynamicznej witryny. Pracując we Flashu, będziesz mógł przygoto- wać dla danych niemal dowolny interfejs, jaki ci przsyjdzie do głowy. Połączenie witryn internetowych z bazami danych można interpretować z różnej per- spektywy:  Użytkowania baz danych do dostarczania materiałów wistrynie internetowej.  Użytkowania witryn w celu udostępnienia użytkownikosm bazy danych. Pierwsze podejście, czyli korzystanie z baz danych, umożliwia tworzenie witryn, które oferują użytkownikowi bezproblemowy dostęp do danych zawartych w bazie i których utrzymanie i aktualizacja nie jest trudna. Drugie podejście, czyli użytkowanie witryn jako interfejsów bazy danych umożliwia projektantowi tworzenie przyjaznych, międzyplatfor- mowych frontonów udostępniających dane użytkownikom sw dowolnym miejscu na świecie. W tym rozdziale pokażemy, jak przygotować wszystkie elementy niezbędne do urucho- mienia aplikacji flashowej, wyświetlającej materiały pochodzące z bazy danych. Właści- wie tytuł tego rozdziału powinien brzmieć „Bazy danych, XML i Flash”, ponieważ w takiej kolejności zajmiemy się tymi zagadnieniami. 348 Flash i XML. Techniki zaawansowane Bazy danych Na rynku oprogramowania jest dostępnych wiele różnych programów baz danych, zaś wybór odpowiedniego wiąże się z rozważeniem takich aspektów jak koszty, elastyczność, wydajność i rozszerzalność. Niektóre z nich są również słatwiejsze do opanowania od innych. Do najbardziej znanych komercyjnych programów baz danych należą Oracle, Microsoft SQL Server i Postgres. Jednak dostępnych jest również mnóstwo „darmowych” prog- ramów baz danych, które znakomicie nadają się do większości zastosowań. Generalnie, jeśli zamierzasz korzystać z systemu RDBMS (Relational DataBase Management System — system obsługi relacyjnej bazy danych), musi on być szgodny z językiem SQL. RDBMS to taki system obsługi bazy danych, który przechowuje dane w postaci powiąza- nych ze sobą tabel. Istnieje jedynie kilka reguł, których należy przestrzegać, by utworzyć dobrą relacyjną bazę danych (dokładniej, jest ich dwanaście (lub trzynaście, w zależności, z kim rozmawiasz); poszukaj hasła Dr E F Codd w dobrej wyszukiwarce internetowej). Język SQL (Structured Query Language — strukturalny język zapytań) stanowi narzę- dzie służące do formułowania zapytań dla zgodnych z nims baz danych. W tym rozdziale użyjemy oprogramowania MySQL, jednego z najpopularniejszych darmowych systemów obsługi baz danych, którego opanowanie jest proste, lecz potrafi on realizować praktycznie dowolne zadania. Oprogramowanie MySQL możesz pobrać ze strony www.mysql.com. W przykładach będziemy korzystać z wersji dla systemu Windows, jednak MySQL jest dostępny rów- nież dla systemu MacOS X. W systemie Windows wystarczy uruchomić program instalacyjny, który instaluje serwer bazy danych i klienta, za pomocą którego można się z nią łączyć. Domyślnie instalator umieszcza oprogramowanie w katalogu c:mysql. Aby nie utrudniać sobie życia, zain- staluj oprogramowanie w tym domyślnym katalogu; jeśli jednak chcesz je zainstalować gdzie indziej, podczas instalacji możesz wybrać kataslog docelowy. Ostatnia dystrybucja MySQL zawiera aż pięć równych serwerów, przy czym wszystkie powinny działać na typowym komputerze PC. Uruchom program winmysqladmin.exe (zawarty w katalogu c:mysqlin). Powinno się pojawić okno dialogowe z prośbą o podanie nazwy użytkoswnika i hasła (rysunek 12.1). Wpisz nazwę i hasło, którego chcesz używać. Następnie powinno się pojawić główne okno sterowania1 (rysunek 12.2). Zielone światło drogowe w prawym górnym narożniku oznacza, że serwer jest urucho- miony i wszystko działa poprawnie. 1 Jeśli okno to automatycznie się minimalizuje, możestz je wyświetlić, klikając na pasku zadań ikonę światteł drogowych i z menu, które się pojawi, wybierając poltecenie Show Me — przyp. tłum. Rozdział 12. K Flash, XML i bazy danych 349 Rysunek 12.1. Rysunek 12.2. Bazę danych MySQL, której tu używamy, można podzielić nsa trzy części:  Sama baza danych  Serwer  Klient Rzeczywiste bazy danych, z którym będziemy korzystać, muszą być dostępne jednocześ- nie dla dużej liczby zewnętrznych użytkowników i oferować różne rodzaje połączeń, dlatego stosuje się w nich architekturę klient-serwer. Z bazą możesz łączyć wiele różnych klientów, lecz dystrybucja MySQL jest wyposażona we własnego klienta, którego możesz połączyć z bazą danych MySQL na dowolnym komputerze. W tym celu musisz określić w kliencie, z jakim serwerem bazy danych chcesz się połą- czyć, kim jesteś i czy chcesz posługiwać się hasłem dostępu. (Jeśli uruchamiasz klienta na tym samym komputerze, na którym jest uruchomiony serwer, nie musisz podawać nazwy komputera macierzystego (hosta), choć nie jest to zabronione). 350 Flash i XML. Techniki zaawansowane 75,22+;+,+.+2-(cid:21)9  $ (cid:21)4+7o3(cid:21)378 Wszystkie te parametry są opcjonalne. Prawdę mówiąc, bezpośrednio po instalacji możesz połączyć się z serwerem, stosując proste polecenie: 75,275 Rysunek 12.3. Po zainstalowaniu oprogramowania MySQL, pliki pomocy w formacie HTML można znaleźć w katalogu c:mysqldocs. Jeśli preferujesz inne formaty dokumentów, odpowied- nie pliki pomocy możesz pobrać z witryny MySQL. Ja korzystam głównie z plików PDF. Trzeci rozdział dokumentacji zawiera wprowadzenie do języka SQL (w języku angiel- skim), wraz z opisem poszczególnych jego elementów. Poniżej przedstawię podstawowe polecenia SQL, abyśmy msogli rozpocząć pracę. Pierwsze polecenia SQL Gdy jesteś już połączony z serwerem, powinieneś się rozejrzeć po otoczeniu. Aby spraw- dzić, jakie bazy danych są dostępne, użyj polecenia: 7573;.+8+,+7/7 Każde polecenie SQL w kliencie powinno być zakończone średnikiem . Jeśli po wpisaniu polecenia nie pojawiają się żadne rezultaty, sprawdź, czy wpisałeś średnik (rysunek 12.4). Rysunek 12.4. Jak zobaczysz, bezpośrednio po instalacji są dostępne dwie bazy danych: 75 oraz 8/78. Pierwsza z nich jest odpowiedzialna za wszystkie przywileje dostępu do bazy da- nych. MySQL korzysta z systemu przywilejów określającego, co może robić konkretny Rozdział 12. K Flash, XML i bazy danych 351 użytkownik z konkretną bazą danych na danym komputerze macierzystym. Jeśli zamierzasz uruchomić bazę danych w Internecie, powinieneś zapoznać się z regułami przywilejów języka MySQL. Instrukcje, które tu przedstawiamy, pełnisą jedynie rolę wprowadzenia. Jeśli uruchamiasz bazę danych na komputerze, który jest bezpośrednio widoczny w Inter- necie, pierwszą czynnością powinna być zmiana hasła administratora. Możesz to zrobić w wierszu poleceń, korzystając z narzędzia 75+.2. Aby zamknąć klienta MySQL, użyj polecenia: 75598 Następnie zmień hasło administratora w następujący spossób: 75,275+.296338+7o33/+7o3 Szafa grająca Utwórzmy nową bazę danych o nazwie 9/,3 (szafa grająca). Połącz się z serwerem MySQL za pomocą klienta MySQL i wpisz polecenie -6/+8/.+8+(cid:22) ,+7/9/,3 (rysunek 12.5). Rysunek 12.5. Od tej chwili posiadasz nową bazę danych, nie zawierającą na razie żadnych tabel. Utwórzmy tabelę o nazwie 0/7 (pliki). Tabela będzie zawierała trzy pola — numer identyfikacyjny, pole zawierające nazwę oraz plik zaswierający utwory. Musimy określić nazwy poszczególnych pól, typy danych w nich przechowywanych oraz maksymalny rozmiar zawartości każdego pola. MySQL posiada kilka typów danych, lecz zwykle korzystamy z danych numerycznych lub tekstowych. 28 +6-+6 3, Liczba całkowita z przedziału od –2147483648 do 2147483647 (jeśli posiada znak) Ciąg znaków o zmiennej długości (od 1 do 255 znaków) (ang. binary large object) z tego typu danych korzystamy wówczas, gdy pole ma zawierać więcej niż 255 znaków Opis pozostałych typów danych znajdziesz w dokumentsacji MySQL. 352 Flash i XML. Techniki zaawansowane Pierwszemu polu nadamy nazwę .. Będzie ono zawierało unikalny klucz identyfikujący każdy rekord. MySQL może automatycznie zwiększać wartość tego identyfikatora, zatem nie musisz się zastanawiać, jaki był identyfikator posprzedniego rekordu. 7597/9/,3 75-6/+8/8+,/0/7..28+983)2-6//282382946+6/0 Gdy określamy pole jako 23829, MySQL nie pozwala dodać rekordu do bazy, jeśli to pole nie posiada zawartości. Jest to użyteczne w sytuacji, gdy wypełniasz ważne pola, takie jak adres e-mail, lub gdy zamierzasz za pomocą tego pola powiązać dwie tabele. Lecz nie wyprzedzajmy. Klient MySQL jest dosyć frustrujący, ponieważ w ścisły sposób sprawdza składnię. To jeden z powodów tworzenia skryptów, które zawierają wszystkie potrzebne polecenia SQL. Inny powód jest taki, że nigdy nie wiesz, kiedy bsędziesz musiał odtworzyć tabelę. Aby formułować zapytania, musisz mieć utworzoną bazę danych, na której zapytania będą operowały. Zastosuj poniższą składnię (słowo kluczowe 4+8 zastąp ścieżką, wskazują- cą plik skryptu MySQL): 752+;+),+).+2-4+827648 75 W naszym przykładzie umieścimy skrypt create_jukebox.sql w katalogu mysql, zatem możesz użyć polecenia: 75,2759/,375-6/+8/)9/,3 75 To polecenie spowoduje wykonanie poleceń zawartych w pliku skryptu, przy czym będą one operowały na podanej bazie danych (rysunek 12.6). Rysunek 12.6. Oto skrypt SQL, który tworzy tabelę bazy danych 9/,3 i wypełnia ją pewnymi danymi. Skrypt ten mieści się w pliku create_jukebox.sql. $3/787648#! $;36/2/9 ;+2/76482;/78;13.2/ 432/;+ .37-;78386/,+3.8;+6+8+,//9,;4/o2+/ .+28/783; 9,8/ 3462 2+,+;.+2-  764-/3 /79 .3;32-43/-/q#! 97/9/,3 -6/+8/8+,/0/7..28.0+983)2-6//282382946+6/0 +8/68+,/0/7+..2+/:+6-+6. 023829 +8/68+,/0/7+..86+-:+6-+6. 023829 27/682830/7:+9/7. +2/6+28  8//2.30;/.2/7.+ 0 27/682830/7:+9/7. +-/3 +6/6 +778/4/+7 0 27/682830/7:+9/7. 32+682 +, /+7/-3/3/ 0 27/682830/7:+9/7. 2.+-.32+. 69#33. +6/0 0 Po utworzeniu bazy danych możesz formułować zapytania sSQL, by ją przetestować. Rozdział 12. K Flash, XML i bazy danych 353 Oto kilka poleceń SQL, z których często korzystam. Wpissz je i zobacz, jaki wynik uzyskasz. Funkcja select Rozpocznijmy od takiego prostego zapytania (rysunek 12.s7): Rysunek 12.7. 7//-8I0630/7 Jak widać, to zapytanie powoduje wyświetlenie wszystkich rekordów, ponieważ posłu- żyliśmy się symbolem wieloznacznym (cid:30). Następne zapytanie wybiera z bazy tylko rekord, którego pole 2+/ zawiera nazwę +2/ 6+28 (rysunek 12.8). Rysunek 12.8. 7//-8I0630/7;/6/2+/ +2/6+28 Wreszcie, poniższe zapytanie wyświetla wszystkie rekordy bazy danych, lecz zmienia tytuły pól (rysunek 12.9). Rysunek 12.9. 7//-8.+78/). 2+/+78/)2+/ 86+-+78/)86+-0630/7 354 Flash i XML. Techniki zaawansowane Funkcja update Funkcja 94.+8/ służy do aktualizacji rekordów w tabeli. Poniższe polecenie we wszyst- kich rekordach tabeli 0/7 zmienia zawartość pola 2+/ na +2/6+28. 94.+8/0/77/82+/ +2/6+28 To polecenie zamienia wartość pola 2+/ w rekordzie, którego pole . jest równe 2. 94.+8/0/77/82+/ +2/6+28;/6/.   Funkcja delete Ta funkcja służy do usuwania rekordów z tabeli. Poniższe polecenie usuwa wszystkie rekordy z tabeli 0/7. .//8/0630/7 Z kolei to polecenie usuwa rekordy, których pole 2+/ ma wartość +2/6+28. .//8/0630/7;/6/2+/ +2/6+28  Dosyć rzadko używam funkcji .//8/ w skryptach uruchamianych w sieci. Wynika to z kilku powodów. Nie jest bezpiecznym rozwiązaniem udzielanie anonimowemu użytkownikowi przywi- leju usuwania rekordów. Znacznie bezpieczniejsze jest utworzenie pola, pełniącego funkcję znacznika „aktywny-nieaktywny”, który pozwoli użytkownikowi czasowo dez- aktywować rekord. Uzyskujemy bardzo podobny efekt, lecz nie wymaga on udzielania użytkownikom tak wielkich przywilejów. Rozpocznij od minimalnych przywilejów i w mia- rę potrzeb zwiększaj je; nigdy nie postępuj w przeciwnym kierunku. Większość baz danych, które udostępniam, umożliwia anonimowym użytkownikom wybieranie (7//-8), wstawia- nie (27/68) i aktualizację rekordów (94.+8/). Jeśli naprawdę chcesz usuwać rekordy, rób to z bezpiescznego komputera. Funkcja drop Tej funkcji używaj z rozwagą. Pozwala ona usuwać tabele, a nawet całe bazy danych. Upewnij się, że wiesz, co robisz, gdy umożliwiasz anonimowym użytkownikom usuwanie danych. Nigdy nie zezwalaj im na usuwanie całych baz sdanych. Poniższe polecenie usuwa tabelę 0/7. .6348+,/0/7 Natomiast poniższe polecenie usuwa bazę danych o nazwie 9/,3, wraz z jej tabelami i ich zawartością. Rozdział 12. K Flash, XML i bazy danych 355 Zanim przejdziemy do następnego podrozdziału, przyjrzyjmy się jeszcze dwóm polece- niom SQL: 16+287//-8 27/68 94.+8/329/,3 0/783;/,97/6  ./280/., +;/,4+77;36.  16+287//-8 27/68 94.+8/329/,3 0/783;/,97/6 3-+378 ./280/., +;/,4+77;36.  Powyższe polecenia umożliwią klientowi uruchomionemu na innym komputerze wybieranie (7//-8), wstawianie (27/68) i aktualizację (94.+8/) rekordów tabeli 0/7 w bazie danych 9/,3. Ponadto udostępnią tę bazę danych skryptom uruchamsianym z serwera. Tworzenie skryptów po stronie serwera Poznałeś już podstawy pracy z klientem MySQL i formułowania zapytań do bazy danych. Możemy zatem przejść do następnego etapu i uruchomić po stronie serwera skrypty, które będą asynchronicznie oddziaływać z bazą danych. Oznacza to, że będą one zdolne wczytywać materiały do filmu Flasha, a następnie wstawiać pozyskane dane do bazy danych. Jako użytkownik Flasha potrafisz już posłu- giwać się językami skryptowymi, takimi jak choćby język ActionScript. Jednak jako język skryptów klienta, jest on obarczony pewnymi ograniczeniami, narzuconymi ze względów bezpieczeństwa. Oto ograniczenia, które nam najbardziej doskwierają:  Brak dostępu do lokalnych plików (w przeciwnym razies każdy niezaufany program mógłby zapisywać lokalne pliki)  Brak dostępu do baz danych lub zasobów sieciowych Skrypty serwerowe, jak się można spodziewać, są uruchamiane na serwerze, a nie na komputerze klienta. W konsekwencji, skrypty serwerowe (generalnie) są zaufane dla apli- kacji, która je wywołuje, czyli można przyjąć, że to, co robią, pokrywa się z tym, co zro- biłbyś sam. Jednym z problemów związanych ze skryptami serwerowymi jest duże obciążenie połą- czeń, gdy określone zadania muszą być wykonywane na serwerze. Przykładem może być przesyłanie formularza HTML. Gdy użytkownik nie wpisze imienia w odpowied- nim polu (co jest wymagane), niekompletny formularz jest przesyłany na serwer, gdzie jest sprawdzany, a następnie odsyłany z powrotem do klienta z prośbą o uzupełnienie brakującego imienia. W rezultacie większość programistów decyduje się na rozwiązania łączące zalety skryptów wykonywanych po stronie klienta i tych działających po stronie serwera (chyba że są oni programistami Java). Na polu języków serwerowych również masz do dyspozycji bogaty wybór, a ponieważ w większości z nich poradzono już sobie z większością błędów i innych problemów, wybór najczęściej opiera się głównie na osobistych upsodobaniach. 356 Flash i XML. Techniki zaawansowane Oto najczęściej brane pod uwagę języki programowania sskryptów serwerowych:  ASP (Active Server Pages — aktywne strony serwera) — zawierające skrypty w taksich językach jak VBScript, CGI Perl, C czy skrypty shell sysstemu Unix  Mod-perl  Python  Server-Side JavaScript (serwerowy JavaScript)  PHP  ColdFusion Tak bogaty wybór może wywołać konsternację, lecz języki te mają wiele cech wspólnych. Ponadto istnieje wiele narzędzi umożliwiających konwersję skryptów z jednego języka skryptowego na inny. Moim osobistym faworytem jest PHP — język bardzo łatwy do opanowania, z doskonałą obsługą baz danych. Jest on abssolutnie darmowy. W poniższych przykładach posłużymy się językiem PHP. Jak zainstalować PHP Najnowszą wersję dystrybucji PHP możesz pobrać z witryny www.php.net. Posiada ona wbudowaną obsługę bazy danych MySQL oraz kilku różnych sserwerów. Doskonałym ułatwieniem jest dokumentacja języka PHP, dostępna na wspomnianej witrynie. Zawiera ona komentarze użytkowników na temat wszystkiego, od instalacji po kwestie związane z poszczególnymi funkcjami. Tworzenie skryptów serwerowych jest nierozerwalnie związane z oprogramowaniem serwera sieciowego, a na tym polu również mamy kilka opcji do wyboru. Uprościmy sobie życie, wybierając oprogramowanie serwerowe najbardziej popularne w Internecie — Apache. Język PHP jest dostępny na swej witrynie w dwóch odmianach, z których jedna jest od razu zabudowana w serwer Apache, jednak jeśli jesteś użytkownikiem Windows, musisz skorzystać z wersji CGI. Oprogramowanie serwerowe Apache możesz pobrać z witryny www.apache.org. Witryna ta jest jednocześnie sercem społeczności, zaangażowanej w wiele innych projektów (w tym bardzo interesujące parsery Java XML). Projekt serwera sieciowego Apache jest znany pod nazwą HTTPD (taka jest nazwa serwera pod systemem Linsux). Jeśli korzystasz z systemu Windows, pobierz binarną wersję dystrybucji win32, którą znajdziesz w podkatalogu binaries. Niedawno zaktualizowano instalatory Apache i teraz korzystają one w systemie Windows ze zintegrowanego instalatora. W związku z tym, jeśli korzystasz z jednej ze starszych wersji systemu Windows, być może będziesz musiał pobrać również ostatnią wersję pakietu Windows Installer. Odnośniki do tego pakietu znajdują się na stronie udostępniającej dystrybucje sApache. W czasie pisania tego tekstu najnowszą wersją serwera sApache była wersja 1.3.22. Rozdział 12. K Flash, XML i bazy danych 357 Współpraca MySQL, PHP i Apache Kombinacja tych trzech komponentów zyskuje coraz większą popularność, zaś ich insta- lacja jest coraz łatwiejsza. Gdy wykonasz poniższe kroki, za pięć minut powinieneś dysponować konfiguracją gotową do pracy. W razie napotkania problemów, poszukaj wskazówek za pomocą wyszukiwarki Google lub innej. 1. Zainstaluj oprogramowanie MySQL. Wymaga to jedynie uruchsomienia instalatora i sprawdzenia, czy serwer działa. To zagadnienie już sopisaliśmy. 2. Zainstaluj serwer Apache. Tu również wystarczy posłużysć się zwykłym instalatorem Windows. W przypadku uruchamiania tego oprogramowania na prawdsziwym serwerze internetowym, program Apache poprosi o szczegóły dotycszące domeny serwera, jego nazwy w sieci oraz adresu e-mail administratoras. Jeśli uruchamiasz ten serwer dla celów treningowych lsub testowych, możesz podać dowolną domenę; podaj adres IP 127.0.0.1 (adres lokalnego kosmputera, gdy nie jest on połączony z siecią) lub twój rzeczywisty adres IP (jesśli chcesz, by inne komputery w sieci również były zdolne do wyświetlania stron). Absy kontynuować, podaj również swój adres e-mail. Instalator utworzy skróty w menu Start i, jeśli pracujesz w systemie Windows NT lub Windows 2000, zaoferuje możliwość uruchomienia serwersa jako serwisu. Na mojej maszynie testowej wolę uruchamiać serwer Apachse jako serwis. Możesz również skorzystać ze skrótów, służących do testowanisa konfiguracji serwera. Uruchom serwer, a następnie użyj adresu http://localhost/, http://127.0.0.1 lub http://twój_adres_IP/, aby zobaczyć testową stronę Apache (rysunek 12.10). Rysunek 12.10. 358 Flash i XML. Techniki zaawansowane Jeżeli łączysz się z Internetem za pomocą modemu, być msoże konieczna jest zmiana pewnych ustawień usługi Dial-Up Networking (DUN), by pojawiła się ta strona. Jeśli komputer próbuje wykręcić numer dostępowy w czassie, gdy chcesz wyświetlić stronę testową Apache, otwórz okno Internet Options (Opcje internetowe) (na przykład w przeglądarce Internet Explorer wybierz polecenie Tools/Internet Explorer (Narzędzia/Opcje internetowe)) i na zakładce Connections (Połączenia) wybierz opcję Never dial a connection (Nigdy nie wybieraj połączenia). Gdy sprawdzisz, że strona testowa się pojawia, możesz przywrócić posprzednie ustawienia DUN. 3. Zainstaluj oprogramowanie PHP w katalogu c:php. Jeśli znasz język angielski, możesz przeczytać plik install.txt zawarty wewnątrz tego katalogu. Zawiera on informacje na temat instalacji tego oprogramowania. Po zainstalowaniu wszystkich plików w katalogu c:php (w naszym przypadku ekran konfiguracji poczty e-mail nie jest istotny) pozsostaną do wykonania jeszcze dwie operacje. Otwórz plik konfiguracyjny Apache httpd.conf (mieści się on w katalogu C:Program FilesApache GroupApacheconf) i odszukaj słowo ..$4/. Wstaw poniższe wiersze pomiędzy inne wiersze ..$4/. #-648+7 44 - 44  ..$4/+44-+832 (cid:21)884.(cid:21)44 44 -832+44-+832 (cid:21)884.(cid:21)44 44 44 // Bardzo ważne — uruchom ponownie serwer Apache. Jeśli psracujesz w systemie Windows NT,
Pobierz darmowy fragment (pdf)

Gdzie kupić całą publikację:

Flash i XML. Techniki zaawansowane
Autor:
, ,

Opinie na temat publikacji:


Inne popularne pozycje z tej kategorii:


Czytaj również:


Prowadzisz stronę lub blog? Wstaw link do fragmentu tej książki i współpracuj z Cyfroteką: