reklama - zainteresowany?

PHP, MySQL i MVC. Tworzenie witryn WWW opartych na bazie danych - Helion

PHP, MySQL i MVC. Tworzenie witryn WWW opartych na bazie danych
ebook
Autor: WÅ‚odzimierz Gajda
ISBN: 978-83-283-2409-1
stron: 528, Format: ebook
Data wydania: 2015-11-24
Księgarnia: Helion

Cena książki: 59,25 zł (poprzednio: 79,00 zł)
Oszczędzasz: 25% (-19,75 zł)

Dodaj do koszyka PHP, MySQL i MVC. Tworzenie witryn WWW opartych na bazie danych

Tagi: MySQL - Programowanie | PHP - Programowanie | Tworzenie stron WWW

  • Model architektoniczny MVC
  • Szablony PHP i szablony Smarty
  • Wizualne projektowanie baz danych
  • Mapowanie relacyjno-obiektowe
  • Oprogramowanie Propel oraz Doctrine
  • Formaty TXT, XML oraz XLS

Duża część popularnych serwisów internetowych dostępnych obecnie w sieci działa w oparciu o relacyjne bazy danych i język PHP. Tandem ten stał się już niemal standardem w dziedzinie tworzenia rozbudowanych, dynamicznych witryn i aplikacji WWW zarówno w przypadku wielkich przedsiębiorstw, jak i hobbystów pragnących dzielić się swoimi doświadczeniami za pośrednictwem internetu. PHP i MySQL doskonale nadają się do praktycznej realizacji wzorca architektonicznego MVC, ułatwiającego opracowywanie nawet najbardziej złożonych projektów. Dzięki odseparowaniu poszczególnych komponentów aplikacji i podzieleniu jej na mniejsze elementy funkcjonalne tworzona witryna jest znacznie wygodniejsza w zarządzaniu i modyfikacji niż serwisy oparte na innych wzorcach.

Wzorzec architektoniczny MVC — choć opracowany z myÅ›lÄ… o uproszczeniu życia programistom i twórcom witryn WWW — poczÄ…tkowo bardzo trudno zrozumieć, a postÄ™p w dziedzinie tworzenia stron internetowych wymusza ciÄ…gÅ‚e dostosowywanie siÄ™ do panujÄ…cych na rynku trendów i staÅ‚e odÅ›wieżanie wiedzy na ten temat. PomocÄ… posÅ‚uży tu odpowiednia książka — z pewnoÅ›ciÄ… może niÄ… być "PHP, MySQL i MVC. Tworzenie witryn WWW opartych na bazie danych ". W przystÄ™pny sposób prezentuje ona podstawy zastosowania architektury MVC, pokazuje wykorzystanie dwóch najważniejszych rozwiÄ…zaÅ„ do mapowania obiektowo-relacyjnego, podsuwa techniki tworzenia funkcjonalnych interfejsów użytkownika aplikacji WWW oraz proponuje stosowanie różnych formatów do przechowywania danych. Poszczególne zagadnienia ilustrowane sÄ… przykÅ‚adami i praktycznymi projektami, dziÄ™ki czemu Å‚atwiej zrozumieć opisywane techniki i wykorzystać je w swoich aplikacjach. ZdobytÄ… wiedzÄ™ pomagajÄ… utrwalić liczne ćwiczenia do samodzielnego wykonania.

  • Podstawy użycia wzorca MVC
  • ModuÅ‚y, akcje, widoki, szablony PHP i szablony Smarty
  • ReguÅ‚y translacji przyjaznych adresów URL
  • Używanie baz danych w projektach WWW
  • Wizualne projektowanie baz danych i mapowanie relacyjno-obiektowe
  • Wykorzystanie oprogramowania Propel oraz Doctrine
  • Metody zwiÄ™kszania funkcjonalnoÅ›ci interfejsów aplikacji internetowych
  • Stronicowanie wyników i przewijanie rekordów
  • Chmura tagów
  • Korzystanie z formatów TXT, XML, XLS
  • Odczyt plików i wypeÅ‚nianie bazy danych
  • Pliki skompresowane i osadzanie danych binarnych w plikach XML

Poznaj w praktyce nowoczesne metody
tworzenia zaawansowanych aplikacji WWW!

Wszystkie projekty omówione w książce umieszczono na płycie dołączonej do książki. Każdy z projektów jest dostępny jako kompletne, działające rozwiązanie, dokładnie przetestowane.

Dodaj do koszyka PHP, MySQL i MVC. Tworzenie witryn WWW opartych na bazie danych

 

Osoby które kupowały "PHP, MySQL i MVC. Tworzenie witryn WWW opartych na bazie danych", wybierały także:

  • PHP i MySQL. Kurs video. Tw
  • SQL. Kurs video. Kompendium wiedzy na podstawie MySQL
  • MySQL. Kurs video. Od podstaw do zagadnieÅ„ zaawansowanych. Tworzenie i analizowanie baz danych
  • Tablice informatyczne. SQL. Wydanie III
  • MySQL. Leksykon kieszonkowy. Wydanie II

Dodaj do koszyka PHP, MySQL i MVC. Tworzenie witryn WWW opartych na bazie danych

Spis treści

PHP, MySQL i MVC. Tworzenie witryn WWW opartych na bazie danych eBook -- spis treści

Wstęp (13)

Część I: Akcje, widoki, translacje adresów URL i bazy danych, czyli podstawy użycia MVC (15)

Rozdział 1. Hello world - pierwsza aplikacja korzystająca z MVC (17)

  • Projekt 1.1. Hello world! (18)
    • Krok pierwszy: utworzenie moduÅ‚u main (19)
    • Krok drugi: utworzenie akcji hello w module main (19)
    • Krok trzeci: utworzenie ukÅ‚adu witryny WWW (20)
    • Krok czwarty: reguÅ‚a translacji adresu pierwszy-projekt.html na wykonanie akcji main/hello (20)
    • Krok piÄ…ty: skrypt index.php (21)
    • Pliki, które należy utworzyć (22)
    • Uruchomienie projektu (23)
    • Przebieg wykonania (24)

RozdziaÅ‚ 2. DoÅ‚Ä…czanie zewnÄ™trznych zasobów .css, .jpg, .js (27)

  • Projekt 2.1. WlazÅ‚ kotek na schody... (28)
  • Analiza Å›cieżek zawartych w kodzie HTML (31)

Rozdział 3. Błędy 404 (35)

  • Projekt 3.1. Å»óÅ‚ta Turnia (36)
    • OglÄ…danie strony bÅ‚Ä™du oraz nagÅ‚ówka HTTP (38)

Rozdział 4. Zmienne i widoki (41)

  • Projekt 4.1. Data i godzina - szablon PHP (42)
  • Projekt 4.2. Data i godzina - szablon Smarty (45)
  • Projekt 4.3. Ojciec i syn - szablon PHP (47)
  • Projekt 4.4. Ojciec i syn - szablony Smarty (49)
  • Projekt 4.5. Stefan Å»eromski: Zmierzch - szablon PHP (50)
  • Projekt 4.6. Stefan Å»eromski: Zmierzch - szablony Smarty (53)
  • Projekt 4.7. Kolory CSS (54)
  • Projekt 4.8. Kolory CSS - szablony Smarty (56)

Rozdział 5. Pre- i postprzetwarzanie (59)

  • Projekt 5.1. Fraszki (60)
  • Projekt 5.2. Fraszki - szablony Smarty (68)

RozdziaÅ‚ 6. Translacja adresów URL (71)

  • Projekt 6.1. KolÄ™dy (73)
  • Analiza różnych rodzajów adresów URL (77)
  • Dwukierunkowość konwersji adresów (78)
  • Konwersje adresów w generowanych stronach WWW (79)
  • WÅ‚Ä…czanie i wyÅ‚Ä…czanie translacji wyjÅ›ciowych (80)
  • Konwersja adresów URL przy użyciu funkcji pomocniczych (81)
  • Implementacja funkcji pomocniczych w postaci wtyczek Smarty (82)
  • Kilka zmiennych w adresach URL (83)
  • Projekt 6.2. Ligi piÅ‚karskie (84)
    • Zmienne $path_prefix oraz ###PATH_PREFIX### (92)

Rozdział 7. Bazy danych (95)

  • Wizualne projektowanie bazy danych (95)
  • Oprogramowanie ORM (99)
  • Konwersja pliku .mwb do formatu Propel XML (100)
  • Konwersja pliku .mwb do formatu Doctrine YML (101)
  • db-frame-tool (101)
  • Propel - generowanie klas dostÄ™pu do bazy (102)
  • ORM Propel - pierwsze kroki (104)
    • Zestawienie wygenerowanych klas oraz najważniejszych metod (104)
    • Podstawy użycia klas wygenerowanych przez Propel (105)
  • Doctrine - generowanie klas dostÄ™pu do bazy (106)
  • ORM Doctrine - pierwsze kroki (107)
    • Zestawienie wygenerowanych klas oraz najważniejszych metod (107)
    • Podstawy użycia klas wygenerowanych przez Doctrine (108)
  • Projekt 7.1. Tatry (szablony PHP, Propel) (109)
    • Krok pierwszy: projekt bazy danych (110)
    • Krok drugi: generowanie klas dostÄ™pu do bazy danych (110)
    • Krok trzeci: tworzenie pustej bazy danych (110)
    • Krok czwarty: wypeÅ‚nianie bazy danych na podstawie pliku tekstowego (110)
    • Krok piÄ…ty: zrzut wypeÅ‚nionej bazy danych (113)
    • Krok szósty: aplikacja prezentujÄ…ca zawartość bazy danych (114)
  • Projekt 7.2. Tatry (szablony PHP, Doctrine) (116)
    • Krok pierwszy: projekt bazy danych (116)
    • Krok drugi: generowanie klas dostÄ™pu do bazy danych (116)
    • Krok trzeci: tworzenie pustej bazy danych (117)
    • Krok czwarty: wypeÅ‚nianie bazy danych na podstawie pliku tekstowego (117)
    • Krok piÄ…ty: zrzut wypeÅ‚nionej bazy danych (118)
    • Krok szósty: aplikacja prezentujÄ…ca zawartość bazy danych (118)
  • Projekt 7.3. Tatry (szablony Smarty, Propel) (119)
  • Projekt 7.4. Tatry (szablony Smarty, Doctrine) (120)

Rozdział 8. Czego powinieneś nauczyć się z części pierwszej? (123)

Część II: Operowanie klasami wygenerowanymi przez Propel oraz Doctrine (129)

RozdziaÅ‚ 9. Wybieranie wszystkich rekordów z tabeli w zadanym porzÄ…dku (131)

  • Propel - sortowanie rekordów (132)
  • Doctrine - sortowanie rekordów (134)
  • Projekt 9.1. SÅ‚ownik (Propel, PHP) (134)
    • Krok pierwszy: projekt bazy danych (135)
    • Krok drugi: generowanie klas dostÄ™pu do bazy danych (135)
    • Krok trzeci: tworzenie pustej bazy danych (137)
    • Krok czwarty: wypeÅ‚nianie bazy danych na podstawie pliku tekstowego (137)
    • Krok piÄ…ty: zrzut wypeÅ‚nionej bazy danych (138)
    • Krok szósty: aplikacja prezentujÄ…ca zawartość bazy danych (138)
  • Projekt 9.2. SÅ‚ownik (Doctrine, PHP) (141)
    • Krok pierwszy: projekt bazy danych (141)
    • Krok drugi: generowanie klas dostÄ™pu do bazy danych (141)
    • Krok trzeci: tworzenie pustej bazy danych (142)
    • Krok czwarty: wypeÅ‚nianie bazy danych na podstawie pliku tekstowego (142)
    • Krok piÄ…ty: zrzut wypeÅ‚nionej bazy danych (142)
    • Krok szósty: aplikacja prezentujÄ…ca zawartość bazy danych (143)

Rozdział 10. Wybieranie pojedynczego rekordu (145)

  • Propel (145)
  • Doctrine (147)
  • Projekt 10.1. Treny (Propel, PHP) (147)
    • Identyfikacja trenu wewnÄ…trz akcji tren/show (151)
  • Projekt 10.2. Treny (Doctrine, PHP) (153)

Rozdział 11. Relacje 1:n (157)

  • Metody generowane przez Propel dla relacji 1:n (158)
  • Doctrine i relacje 1:n (160)
  • Projekt 11.1. Kontynenty, paÅ„stwa, miasta (Propel, PHP) (162)
    • Przygotowanie bazy danych (163)
    • Aplikacja (167)
  • Projekt 11.2. Kontynenty, paÅ„stwa, miasta (Doctrine, PHP) (173)
    • Rozszerzanie wÅ‚aÅ›ciwoÅ›ci klas generowanych przez Doctrine (174)
    • Wstawianie rekordów (176)
    • Aplikacja (178)

Rozdział 12. Relacje n:m (181)

  • Metody generowane przez Propel dla relacji n:m (182)
  • Doctrine i relacje n:m (183)
  • Projekt 12.1. Filmy (Propel, PHP) (184)
    • Przygotowanie bazy danych (184)
    • Aplikacja (187)
  • Projekt 12.2. Filmy (Doctrine, PHP) (189)
  • Propel. Sortowanie rekordów stojÄ…cych w relacji n:m (192)
  • Projekt 12.3. Filmy (Propel, PHP, sortowanie) (192)
  • Doctrine. Sortowanie rekordów stojÄ…cych w relacji n:m (193)
  • Projekt 12.4. Filmy (Doctrine, PHP, sortowanie) (194)

Rozdział 13. Zagadnienia dodatkowe dotyczące warstw M oraz V (197)

  • Czyszczenie zawartoÅ›ci bazy danych (197)
  • Konwersja obiektu w napis (198)
  • Konwersje toArray(), fromArray() (198)
  • Warunkowe wstawianie nieistniejÄ…cych obiektów (200)
  • Wielokrotne wykorzystanie widoku (201)
  • Projekt 13.1. Aparaty foto (Propel, PHP) (202)
    • Warstwa M (202)
    • WypeÅ‚nianie bazy danych (205)
    • Aplikacja (206)
  • Projekt 13.2. Aparaty foto (Doctrine, PHP) (208)
    • Rozszerzanie funkcjonalnoÅ›ci klas wygenerowanych przez Doctrine (209)
    • Wstawianie rekordów do bazy danych (211)
    • Aplikacja (212)

RozdziaÅ‚ 14. Zapisywanie w bazie danych obrazów i plików binarnych (215)

  • Zapisywanie w bazie danych zdjęć JPG (215)
  • Prezentowanie zdjęć JPG zapisanych w bazie danych na stronie WWW (216)
  • Zapisywanie w bazie danych dowolnych plików binarnych (218)
  • WysyÅ‚anie danych binarnych z bazy do przeglÄ…darki (220)
  • Projekt 14.1. NotH (Propel, PHP) (221)
    • Skrypt wstaw.php (223)
    • Aplikacja (224)
    • TytuÅ‚y stron (225)
    • Rozwijane menu pionowe (226)
    • WartoÅ›ci atrybutów href oraz src w tekstach zapisanych w bazie danych (227)
  • Projekt 14.2. NotH (Doctrine, PHP) (229)
    • Skrypt wstaw.php (230)
    • Aplikacja (230)

Rozdział 15. Akcje list i show, czyli publikowanie zawartości bazy danych w postaci witryny WWW (233)

  • Projekt 15.1. Czcionki projektów CSS Zen Garden (Propel, PHP) (234)
    • Aplikacja (235)
    • Menu gÅ‚ówne witryny oraz tytuÅ‚y podstron (240)

Rozdział 16. Czego powinieneś nauczyć się z części drugiej? (243)

Część III: Zwiększanie funkcjonalności interfejsu aplikacji internetowej (245)

RozdziaÅ‚ 17. Kontekstowe hiperÅ‚Ä…cza do stron ze szczegóÅ‚owymi informacjami (247)

  • Projekt 17.1. Angaże (szablony PHP, Propel) (248)
    • Unikatowość kolumny slug (248)
    • Pliki tekstowe o bardziej zÅ‚ożonej strukturze (250)
    • Rozszerzenia warstwy M (251)
    • Filtry konwertujÄ…ce generowany kod HTML (260)
    • Aplikacja (261)
    • HiperÅ‚Ä…cza kontekstowe (263)
    • Menu kontekstowe (264)

Rozdział 18. Następny, poprzedni, czyli przewijanie zawartości witryny WWW (267)

  • Projekt 18.1. PHP. Praktyczne projekty (269)
    • Ograniczenia kluczy obcych (270)
    • WstÄ™pne opracowanie aplikacji (271)
    • Implementacja hiperÅ‚Ä…czy nastÄ™pny/poprzedni (276)
    • HiperÅ‚Ä…cza link zawarte w nagÅ‚ówku strony WWW (285)

Rozdział 19. Wskaźnik położenia (287)

  • Projekt 19.1. Kolekcja pÅ‚yt DVD z fotografiami (288)
    • Rozszerzanie klas dostÄ™pu do bazy danych (291)
    • WypeÅ‚nianie bazy danych rekordami (295)
    • Aplikacja (302)
    • Translacje adresów stosujÄ…cych cztery zmienne URL (304)
    • Tabela zdjęć wykonana bez użycia tabel HTML (305)
    • Wskaźniki nastÄ™pny/poprzedni do przewijania zdjęć i kategorii (306)
    • Efekt rollover ze wskaźnikiem wybranej opcji (307)
    • Fotografie podążajÄ…ce za wskaźnikiem myszki (307)
    • Wskaźnik breadcrumbs (310)

Rozdział 20. Sortowanie tabel (311)

  • Projekt 20.1. PiÅ‚ka nożna - sezon 2002/2003 (312)
    • Wielokrotne klucze obce z tej samej tabeli (314)
    • Sortowanie zÅ‚Ä…czeÅ„ dla wielokrotnych kluczy (314)
    • WypeÅ‚nianie bazy danych (317)
    • Zarys aplikacji (320)
    • Implementacja sortowalnych tabelek HTML (320)

Rozdział 21. Stronicowanie (331)

  • Projekt 21.1. 33 ? (332)
    • Automatyczne generowanie identyfikatorów slug dla rekordów o zdublowanych tytuÅ‚ach (333)
    • Klasa Pager (335)
    • Widok wskaźnika stronicowania (343)
    • Prezentacja rekordów poddanych stronicowaniu (345)
    • Kontekstowe stronicowanie rekordów (348)

Rozdział 22. Alfabet (351)

  • Projekt 22.1. Imiona (351)
    • Wybieranie alfabetu liter (352)
  • Komponent wyÅ›wietlajÄ…cy alfabet (353)
    • Prezentacja liter rozpoczynajÄ…cych siÄ™ od wybranej litery na stronie WWW (354)
    • Umieszczanie kontrolki z listÄ… liter w szablonie layout.html (355)

RozdziaÅ‚ 23. Chmura tagów (357)

  • Projekt 23.1. Katalog Open Clipart (358)
    • WypeÅ‚nianie bazy danych (360)
    • Waga sÅ‚ów kluczowych (363)
    • Aplikacja (365)

Rozdział 24. Spis treści (371)

  • Projekt 24.1. ArtykuÅ‚y (372)
    • WypeÅ‚nianie bazy danych rekordami (373)
    • Funkcje odpowiedzialne za odczytywanie i usuwanie fragmentów kodu HTML (376)
    • Funkcje odpowiedzialne za tworzenie spisu treÅ›ci (378)
    • Kolorowanie skÅ‚adni (380)
    • Aplikacja (381)

Rozdział 25. Czego powinieneś nauczyć się z części trzeciej? (383)

Część IV: Formaty danych (385)

RozdziaÅ‚ 26. Podstawy przetwarzania dokumentów XML w PHP (387)

  • Klasa SimpleXML (387)
    • Tworzenie obiektu SimpleXMLElement (388)
    • DostÄ™p do wÄ™zÅ‚ów drzewa (389)
    • Lista identycznych elementów (390)
    • DostÄ™p do atrybutów (391)
    • Przetwarzanie wszystkich elementów i ich atrybutów (391)
    • Wielokrotne zagnieżdżenia (392)
    • JÄ™zyk XPath (395)
  • PrzykÅ‚adowe dokumenty XML dostÄ™pne w internecie (395)
    • Kursy walut (395)
    • Książki wydawnictwa Helion (397)
  • Projekt 26.1. Turniej Czterech Skoczni (398)
    • Aplikacja (400)

RozdziaÅ‚ 27. Generowanie dokumentów XML w PHP (403)

  • Statyczne pliki XML (403)
  • Generowanie dokumentu XML w PHP (405)
  • Echo - drukowanie kodu XML (406)
  • Generowanie XML na podstawie tablicy (407)
  • Generowanie XML na podstawie pliku tekstowego (408)
  • Zapisywanie kodu XML do pliku (409)
  • Konwersja pliku tekstowego do formatu XML (409)
  • Dane w formacie XML opisujÄ…ce witrynÄ™ WWW (410)
    • Mapa witryny: sitemap.xml (410)
    • KanaÅ‚ RSS (411)
  • Projekt 27.1. Kursy walut (412)
    • Ustalanie adresów dokumentów XML z kursami walut (412)
    • Projekt bazy danych (413)
    • WypeÅ‚nianie bazy danych rekordami (413)
    • Aplikacja (415)
    • KanaÅ‚ RSS (415)
    • Mapa witryny (416)
    • Wykresy kursów walut (418)

Rozdział 28. XML_Serializer, XML_Unserializer - dwukierunkowe transformacje tablic w XML (423)

  • XML_Serializer (423)
    • Konwersja tablicy w kod XML (423)
    • Tablica asocjacyjna (424)
    • Opcje (425)
    • Tablica opcji (426)
    • Jednowymiarowa tablica indeksowana (426)
    • Wielowymiarowe tablice indeksowane (427)
    • Atrybuty (428)
    • Wybiórcze stosowanie atrybutów (429)
    • PrzeksztaÅ‚cenia (430)
  • XML_Serializer - przykÅ‚ady (431)
  • Projekt 28.1. Konwersja pliku nobel.txt (431)
  • Projekt 28.2. Konwersja pliku mecze.txt (432)
  • Projekt 28.3. Konwersja pliku tcs.txt (434)
  • Klasa XML_Unserializer (436)
    • Podstawowe użycie (436)
    • Odczyt pliku (437)
    • Parsing atrybutów (437)
  • Konwersja formatu XML (439)
  • Projekt 28.4. Konwersja jeden-w-wiele (439)
  • Projekt 28.5. Konwersja wiele-w-jeden (440)
  • Projekt 28.6. Klasyfikacja zwierzÄ…t (441)
    • WypeÅ‚nianie bazy danych rekordami (442)
    • ModuÅ‚y i akcje aplikacji (443)
    • Akcja main/drzewo (444)
    • KanaÅ‚ RSS (444)
    • Generowanie statycznego dokumentu sitemap.xml (447)

Rozdział 29. Arkusze kalkulacyjne MS Excel XLS (449)

  • Odczyt pliku XLS (449)
    • Odczyt kilku arkuszy (451)
  • Tworzenie pliku XLS (452)
  • WysyÅ‚anie arkusza do przeglÄ…darki (453)
    • Konwersja pliku tekstowego do formatu XLS (453)
  • Konwersja pliku XLS do formatu tekstowego (454)
  • Projekt 29.1. Generowanie danych autokomisu (455)
  • Projekt 29.2. Autokomis (460)
    • WypeÅ‚nianie bazy danych rekordami (460)
    • Aplikacja (465)

RozdziaÅ‚ 30. Konwersja plików z danymi (467)

  • Format danych tekstowych (467)
  • Format danych XML (469)
  • Format danych XLS (470)
  • Projekt 30.1. Konwersja formatu TXT do formatu XML (470)
  • Projekt 30.2. Konwersja formatu TXT do formatu XLS (474)
  • Projekt 30.3. Konwersja formatu XML do formatu TXT (476)
  • Projekt 30.4. Konwersja formatu XML do formatu XLS (477)
  • Projekt 30.5. Konwersja formatu XLS do formatu TXT (478)
  • Projekt 30.6. Konwersja formatu XLS do formatu XML (480)
  • Projekt 30.7. Zestawienia artykuÅ‚ów "Magazynu INTERNET" (480)
    • Aplikacja (483)
    • Akcja list prezentujÄ…ca sortowalnÄ… i stronicowanÄ… tabelkÄ™ HTML (484)
    • Akcja show prezentujÄ…ca sortowalnÄ… i stronicowanÄ… tabelkÄ™ HTML (486)

Rozdział 31. Skompresowane dokumenty XML zawierające dane binarne (489)

  • Kodowanie base64 (490)
  • Dekodowanie base64 (490)
  • Kompresja danych (491)
  • Dekompresja danych (492)
  • Projekt 31.1. Format danych systemu do publikowania artykuÅ‚ów (493)
    • Umieszczanie ilustracji, listingów, ramek i tabel w treÅ›ci artykuÅ‚u (495)
  • Projekt 31.2. Konwersja artykuÅ‚u z formatu tekstowego do spakowanego pliku XML (495)
  • Projekt 31.3. System publikacji artykuÅ‚ów w postaci witryny WWW (498)
    • Baza danych (499)
    • Propel i dostÄ™p tylko do wybranych kolumn tabeli (499)
    • WypeÅ‚nianie bazy danych (501)
    • Aplikacja (508)

Rozdział 32. Czego powinieneś nauczyć się z części czwartej? (511)

Skorowidz (513)

zz

Wstęp (13)

Część I: Akcje, widoki, translacje adresów URL i bazy danych, czyli podstawy użycia MVC (15)

Rozdział 1. Hello world - pierwsza aplikacja korzystająca z MVC (17)

  • Projekt 1.1. Hello world! (18)
    • Krok pierwszy: utworzenie moduÅ‚u main (19)
    • Krok drugi: utworzenie akcji hello w module main (19)
    • Krok trzeci: utworzenie ukÅ‚adu witryny WWW (20)
    • Krok czwarty: reguÅ‚a translacji adresu pierwszy-projekt.html na wykonanie akcji main/hello (20)
    • Krok piÄ…ty: skrypt index.php (21)
    • Pliki, które należy utworzyć (22)
    • Uruchomienie projektu (23)
    • Przebieg wykonania (24)

RozdziaÅ‚ 2. DoÅ‚Ä…czanie zewnÄ™trznych zasobów .css, .jpg, .js (27)

  • Projekt 2.1. WlazÅ‚ kotek na schody... (28)
  • Analiza Å›cieżek zawartych w kodzie HTML (31)

Rozdział 3. Błędy 404 (35)

  • Projekt 3.1. Å»óÅ‚ta Turnia (36)
    • OglÄ…danie strony bÅ‚Ä™du oraz nagÅ‚ówka HTTP (38)

Rozdział 4. Zmienne i widoki (41)

  • Projekt 4.1. Data i godzina - szablon PHP (42)
  • Projekt 4.2. Data i godzina - szablon Smarty (45)
  • Projekt 4.3. Ojciec i syn - szablon PHP (47)
  • Projekt 4.4. Ojciec i syn - szablony Smarty (49)
  • Projekt 4.5. Stefan Å»eromski: Zmierzch - szablon PHP (50)
  • Projekt 4.6. Stefan Å»eromski: Zmierzch - szablony Smarty (53)
  • Projekt 4.7. Kolory CSS (54)
  • Projekt 4.8. Kolory CSS - szablony Smarty (56)

Rozdział 5. Pre- i postprzetwarzanie (59)

  • Projekt 5.1. Fraszki (60)
  • Projekt 5.2. Fraszki - szablony Smarty (68)

RozdziaÅ‚ 6. Translacja adresów URL (71)

  • Projekt 6.1. KolÄ™dy (73)
  • Analiza różnych rodzajów adresów URL (77)
  • Dwukierunkowość konwersji adresów (78)
  • Konwersje adresów w generowanych stronach WWW (79)
  • WÅ‚Ä…czanie i wyÅ‚Ä…czanie translacji wyjÅ›ciowych (80)
  • Konwersja adresów URL przy użyciu funkcji pomocniczych (81)
  • Implementacja funkcji pomocniczych w postaci wtyczek Smarty (82)
  • Kilka zmiennych w adresach URL (83)
  • Projekt 6.2. Ligi piÅ‚karskie (84)
    • Zmienne $path_prefix oraz ###PATH_PREFIX### (92)

Rozdział 7. Bazy danych (95)

  • Wizualne projektowanie bazy danych (95)
  • Oprogramowanie ORM (99)
  • Konwersja pliku .mwb do formatu Propel XML (100)
  • Konwersja pliku .mwb do formatu Doctrine YML (101)
  • db-frame-tool (101)
  • Propel - generowanie klas dostÄ™pu do bazy (102)
  • ORM Propel - pierwsze kroki (104)
    • Zestawienie wygenerowanych klas oraz najważniejszych metod (104)
    • Podstawy użycia klas wygenerowanych przez Propel (105)
  • Doctrine - generowanie klas dostÄ™pu do bazy (106)
  • ORM Doctrine - pierwsze kroki (107)
    • Zestawienie wygenerowanych klas oraz najważniejszych metod (107)
    • Podstawy użycia klas wygenerowanych przez Doctrine (108)
  • Projekt 7.1. Tatry (szablony PHP, Propel) (109)
    • Krok pierwszy: projekt bazy danych (110)
    • Krok drugi: generowanie klas dostÄ™pu do bazy danych (110)
    • Krok trzeci: tworzenie pustej bazy danych (110)
    • Krok czwarty: wypeÅ‚nianie bazy danych na podstawie pliku tekstowego (110)
    • Krok piÄ…ty: zrzut wypeÅ‚nionej bazy danych (113)
    • Krok szósty: aplikacja prezentujÄ…ca zawartość bazy danych (114)
  • Projekt 7.2. Tatry (szablony PHP, Doctrine) (116)
    • Krok pierwszy: projekt bazy danych (116)
    • Krok drugi: generowanie klas dostÄ™pu do bazy danych (116)
    • Krok trzeci: tworzenie pustej bazy danych (117)
    • Krok czwarty: wypeÅ‚nianie bazy danych na podstawie pliku tekstowego (117)
    • Krok piÄ…ty: zrzut wypeÅ‚nionej bazy danych (118)
    • Krok szósty: aplikacja prezentujÄ…ca zawartość bazy danych (118)
  • Projekt 7.3. Tatry (szablony Smarty, Propel) (119)
  • Projekt 7.4. Tatry (szablony Smarty, Doctrine) (120)

Rozdział 8. Czego powinieneś nauczyć się z części pierwszej? (123)

Część II: Operowanie klasami wygenerowanymi przez Propel oraz Doctrine (129)

RozdziaÅ‚ 9. Wybieranie wszystkich rekordów z tabeli w zadanym porzÄ…dku (131)

  • Propel - sortowanie rekordów (132)
  • Doctrine - sortowanie rekordów (134)
  • Projekt 9.1. SÅ‚ownik (Propel, PHP) (134)
    • Krok pierwszy: projekt bazy danych (135)
    • Krok drugi: generowanie klas dostÄ™pu do bazy danych (135)
    • Krok trzeci: tworzenie pustej bazy danych (137)
    • Krok czwarty: wypeÅ‚nianie bazy danych na podstawie pliku tekstowego (137)
    • Krok piÄ…ty: zrzut wypeÅ‚nionej bazy danych (138)
    • Krok szósty: aplikacja prezentujÄ…ca zawartość bazy danych (138)
  • Projekt 9.2. SÅ‚ownik (Doctrine, PHP) (141)
    • Krok pierwszy: projekt bazy danych (141)
    • Krok drugi: generowanie klas dostÄ™pu do bazy danych (141)
    • Krok trzeci: tworzenie pustej bazy danych (142)
    • Krok czwarty: wypeÅ‚nianie bazy danych na podstawie pliku tekstowego (142)
    • Krok piÄ…ty: zrzut wypeÅ‚nionej bazy danych (142)
    • Krok szósty: aplikacja prezentujÄ…ca zawartość bazy danych (143)

Rozdział 10. Wybieranie pojedynczego rekordu (145)

  • Propel (145)
  • Doctrine (147)
  • Projekt 10.1. Treny (Propel, PHP) (147)
    • Identyfikacja trenu wewnÄ…trz akcji tren/show (151)
  • Projekt 10.2. Treny (Doctrine, PHP) (153)

Rozdział 11. Relacje 1:n (157)

  • Metody generowane przez Propel dla relacji 1:n (158)
  • Doctrine i relacje 1:n (160)
  • Projekt 11.1. Kontynenty, paÅ„stwa, miasta (Propel, PHP) (162)
    • Przygotowanie bazy danych (163)
    • Aplikacja (167)
  • Projekt 11.2. Kontynenty, paÅ„stwa, miasta (Doctrine, PHP) (173)
    • Rozszerzanie wÅ‚aÅ›ciwoÅ›ci klas generowanych przez Doctrine (174)
    • Wstawianie rekordów (176)
    • Aplikacja (178)

Rozdział 12. Relacje n:m (181)

  • Metody generowane przez Propel dla relacji n:m (182)
  • Doctrine i relacje n:m (183)
  • Projekt 12.1. Filmy (Propel, PHP) (184)
    • Przygotowanie bazy danych (184)
    • Aplikacja (187)
  • Projekt 12.2. Filmy (Doctrine, PHP) (189)
  • Propel. Sortowanie rekordów stojÄ…cych w relacji n:m (192)
  • Projekt 12.3. Filmy (Propel, PHP, sortowanie) (192)
  • Doctrine. Sortowanie rekordów stojÄ…cych w relacji n:m (193)
  • Projekt 12.4. Filmy (Doctrine, PHP, sortowanie) (194)

Rozdział 13. Zagadnienia dodatkowe dotyczące warstw M oraz V (197)

  • Czyszczenie zawartoÅ›ci bazy danych (197)
  • Konwersja obiektu w napis (198)
  • Konwersje toArray(), fromArray() (198)
  • Warunkowe wstawianie nieistniejÄ…cych obiektów (200)
  • Wielokrotne wykorzystanie widoku (201)
  • Projekt 13.1. Aparaty foto (Propel, PHP) (202)
    • Warstwa M (202)
    • WypeÅ‚nianie bazy danych (205)
    • Aplikacja (206)
  • Projekt 13.2. Aparaty foto (Doctrine, PHP) (208)
    • Rozszerzanie funkcjonalnoÅ›ci klas wygenerowanych przez Doctrine (209)
    • Wstawianie rekordów do bazy danych (211)
    • Aplikacja (212)

RozdziaÅ‚ 14. Zapisywanie w bazie danych obrazów i plików binarnych (215)

  • Zapisywanie w bazie danych zdjęć JPG (215)
  • Prezentowanie zdjęć JPG zapisanych w bazie danych na stronie WWW (216)
  • Zapisywanie w bazie danych dowolnych plików binarnych (218)
  • WysyÅ‚anie danych binarnych z bazy do przeglÄ…darki (220)
  • Projekt 14.1. NotH (Propel, PHP) (221)
    • Skrypt wstaw.php (223)
    • Aplikacja (224)
    • TytuÅ‚y stron (225)
    • Rozwijane menu pionowe (226)
    • WartoÅ›ci atrybutów href oraz src w tekstach zapisanych w bazie danych (227)
  • Projekt 14.2. NotH (Doctrine, PHP) (229)
    • Skrypt wstaw.php (230)
    • Aplikacja (230)

Rozdział 15. Akcje list i show, czyli publikowanie zawartości bazy danych w postaci witryny WWW (233)

  • Projekt 15.1. Czcionki projektów CSS Zen Garden (Propel, PHP) (234)
    • Aplikacja (235)
    • Menu gÅ‚ówne witryny oraz tytuÅ‚y podstron (240)

Rozdział 16. Czego powinieneś nauczyć się z części drugiej? (243)

Część III: Zwiększanie funkcjonalności interfejsu aplikacji internetowej (245)

RozdziaÅ‚ 17. Kontekstowe hiperÅ‚Ä…cza do stron ze szczegóÅ‚owymi informacjami (247)

  • Projekt 17.1. Angaże (szablony PHP, Propel) (248)
    • Unikatowość kolumny slug (248)
    • Pliki tekstowe o bardziej zÅ‚ożonej strukturze (250)
    • Rozszerzenia warstwy M (251)
    • Filtry konwertujÄ…ce generowany kod HTML (260)
    • Aplikacja (261)
    • HiperÅ‚Ä…cza kontekstowe (263)
    • Menu kontekstowe (264)

Rozdział 18. Następny, poprzedni, czyli przewijanie zawartości witryny WWW (267)

  • Projekt 18.1. PHP. Praktyczne projekty (269)
    • Ograniczenia kluczy obcych (270)
    • WstÄ™pne opracowanie aplikacji (271)
    • Implementacja hiperÅ‚Ä…czy nastÄ™pny/poprzedni (276)
    • HiperÅ‚Ä…cza link zawarte w nagÅ‚ówku strony WWW (285)

Rozdział 19. Wskaźnik położenia (287)

  • Projekt 19.1. Kolekcja pÅ‚yt DVD z fotografiami (288)
    • Rozszerzanie klas dostÄ™pu do bazy danych (291)
    • WypeÅ‚nianie bazy danych rekordami (295)
    • Aplikacja (302)
    • Translacje adresów stosujÄ…cych cztery zmienne URL (304)
    • Tabela zdjęć wykonana bez użycia tabel HTML (305)
    • Wskaźniki nastÄ™pny/poprzedni do przewijania zdjęć i kategorii (306)
    • Efekt rollover ze wskaźnikiem wybranej opcji (307)
    • Fotografie podążajÄ…ce za wskaźnikiem myszki (307)
    • Wskaźnik breadcrumbs (310)

Rozdział 20. Sortowanie tabel (311)

  • Projekt 20.1. PiÅ‚ka nożna - sezon 2002/2003 (312)
    • Wielokrotne klucze obce z tej samej tabeli (314)
    • Sortowanie zÅ‚Ä…czeÅ„ dla wielokrotnych kluczy (314)
    • WypeÅ‚nianie bazy danych (317)
    • Zarys aplikacji (320)
    • Implementacja sortowalnych tabelek HTML (320)

Rozdział 21. Stronicowanie (331)

  • Projekt 21.1. 33 ? (332)
    • Automatyczne generowanie identyfikatorów slug dla rekordów o zdublowanych tytuÅ‚ach (333)
    • Klasa Pager (335)
    • Widok wskaźnika stronicowania (343)
    • Prezentacja rekordów poddanych stronicowaniu (345)
    • Kontekstowe stronicowanie rekordów (348)

Rozdział 22. Alfabet (351)

  • Projekt 22.1. Imiona (351)
    • Wybieranie alfabetu liter (352)
  • Komponent wyÅ›wietlajÄ…cy alfabet (353)
    • Prezentacja liter rozpoczynajÄ…cych siÄ™ od wybranej litery na stronie WWW (354)
    • Umieszczanie kontrolki z listÄ… liter w szablonie layout.html (355)

RozdziaÅ‚ 23. Chmura tagów (357)

  • Projekt 23.1. Katalog Open Clipart (358)
    • WypeÅ‚nianie bazy danych (360)
    • Waga sÅ‚ów kluczowych (363)
    • Aplikacja (365)

Rozdział 24. Spis treści (371)

  • Projekt 24.1. ArtykuÅ‚y (372)
    • WypeÅ‚nianie bazy danych rekordami (373)
    • Funkcje odpowiedzialne za odczytywanie i usuwanie fragmentów kodu HTML (376)
    • Funkcje odpowiedzialne za tworzenie spisu treÅ›ci (378)
    • Kolorowanie skÅ‚adni (380)
    • Aplikacja (381)

Rozdział 25. Czego powinieneś nauczyć się z części trzeciej? (383)

Część IV: Formaty danych (385)

RozdziaÅ‚ 26. Podstawy przetwarzania dokumentów XML w PHP (387)

  • Klasa SimpleXML (387)
    • Tworzenie obiektu SimpleXMLElement (388)
    • DostÄ™p do wÄ™zÅ‚ów drzewa (389)
    • Lista identycznych elementów (390)
    • DostÄ™p do atrybutów (391)
    • Przetwarzanie wszystkich elementów i ich atrybutów (391)
    • Wielokrotne zagnieżdżenia (392)
    • JÄ™zyk XPath (395)
  • PrzykÅ‚adowe dokumenty XML dostÄ™pne w internecie (395)
    • Kursy walut (395)
    • Książki wydawnictwa Helion (397)
  • Projekt 26.1. Turniej Czterech Skoczni (398)
    • Aplikacja (400)

RozdziaÅ‚ 27. Generowanie dokumentów XML w PHP (403)

  • Statyczne pliki XML (403)
  • Generowanie dokumentu XML w PHP (405)
  • Echo - drukowanie kodu XML (406)
  • Generowanie XML na podstawie tablicy (407)
  • Generowanie XML na podstawie pliku tekstowego (408)
  • Zapisywanie kodu XML do pliku (409)
  • Konwersja pliku tekstowego do formatu XML (409)
  • Dane w formacie XML opisujÄ…ce witrynÄ™ WWW (410)
    • Mapa witryny: sitemap.xml (410)
    • KanaÅ‚ RSS (411)
  • Projekt 27.1. Kursy walut (412)
    • Ustalanie adresów dokumentów XML z kursami walut (412)
    • Projekt bazy danych (413)
    • WypeÅ‚nianie bazy danych rekordami (413)
    • Aplikacja (415)
    • KanaÅ‚ RSS (415)
    • Mapa witryny (416)
    • Wykresy kursów walut (418)

Rozdział 28. XML_Serializer, XML_Unserializer - dwukierunkowe transformacje tablic w XML (423)

  • XML_Serializer (423)
    • Konwersja tablicy w kod XML (423)
    • Tablica asocjacyjna (424)
    • Opcje (425)
    • Tablica opcji (426)
    • Jednowymiarowa tablica indeksowana (426)
    • Wielowymiarowe tablice indeksowane (427)
    • Atrybuty (428)
    • Wybiórcze stosowanie atrybutów (429)
    • PrzeksztaÅ‚cenia (430)
  • XML_Serializer - przykÅ‚ady (431)
  • Projekt 28.1. Konwersja pliku nobel.txt (431)
  • Projekt 28.2. Konwersja pliku mecze.txt (432)
  • Projekt 28.3. Konwersja pliku tcs.txt (434)
  • Klasa XML_Unserializer (436)
    • Podstawowe użycie (436)
    • Odczyt pliku (437)
    • Parsing atrybutów (437)
  • Konwersja formatu XML (439)
  • Projekt 28.4. Konwersja jeden-w-wiele (439)
  • Projekt 28.5. Konwersja wiele-w-jeden (440)
  • Projekt 28.6. Klasyfikacja zwierzÄ…t (441)
    • WypeÅ‚nianie bazy danych rekordami (442)
    • ModuÅ‚y i akcje aplikacji (443)
    • Akcja main/drzewo (444)
    • KanaÅ‚ RSS (444)
    • Generowanie statycznego dokumentu sitemap.xml (447)

Rozdział 29. Arkusze kalkulacyjne MS Excel XLS (449)

  • Odczyt pliku XLS (449)
    • Odczyt kilku arkuszy (451)
  • Tworzenie pliku XLS (452)
  • WysyÅ‚anie arkusza do przeglÄ…darki (453)
    • Konwersja pliku tekstowego do formatu XLS (453)
  • Konwersja pliku XLS do formatu tekstowego (454)
  • Projekt 29.1. Generowanie danych autokomisu (455)
  • Projekt 29.2. Autokomis (460)
    • WypeÅ‚nianie bazy danych rekordami (460)
    • Aplikacja (465)

RozdziaÅ‚ 30. Konwersja plików z danymi (467)

  • Format danych tekstowych (467)
  • Format danych XML (469)
  • Format danych XLS (470)
  • Projekt 30.1. Konwersja formatu TXT do formatu XML (470)
  • Projekt 30.2. Konwersja formatu TXT do formatu XLS (474)
  • Projekt 30.3. Konwersja formatu XML do formatu TXT (476)
  • Projekt 30.4. Konwersja formatu XML do formatu XLS (477)
  • Projekt 30.5. Konwersja formatu XLS do formatu TXT (478)
  • Projekt 30.6. Konwersja formatu XLS do formatu XML (480)
  • Projekt 30.7. Zestawienia artykuÅ‚ów "Magazynu INTERNET" (480)
    • Aplikacja (483)
    • Akcja list prezentujÄ…ca sortowalnÄ… i stronicowanÄ… tabelkÄ™ HTML (484)
    • Akcja show prezentujÄ…ca sortowalnÄ… i stronicowanÄ… tabelkÄ™ HTML (486)

Rozdział 31. Skompresowane dokumenty XML zawierające dane binarne (489)

  • Kodowanie base64 (490)
  • Dekodowanie base64 (490)
  • Kompresja danych (491)
  • Dekompresja danych (492)
  • Projekt 31.1. Format danych systemu do publikowania artykuÅ‚ów (493)
    • Umieszczanie ilustracji, listingów, ramek i tabel w treÅ›ci artykuÅ‚u (495)
  • Projekt 31.2. Konwersja artykuÅ‚u z formatu tekstowego do spakowanego pliku XML (495)
  • Projekt 31.3. System publikacji artykuÅ‚ów w postaci witryny WWW (498)
    • Baza danych (499)
    • Propel i dostÄ™p tylko do wybranych kolumn tabeli (499)
    • WypeÅ‚nianie bazy danych (501)
    • Aplikacja (508)

Rozdział 32. Czego powinieneś nauczyć się z części czwartej? (511)

Skorowidz (513)

Dodaj do koszyka PHP, MySQL i MVC. Tworzenie witryn WWW opartych na bazie danych

Code, Publish & WebDesing by CATALIST.com.pl



(c) 2005-2024 CATALIST agencja interaktywna, znaki firmowe należą do wydawnictwa Helion S.A.