Szczegóły ebooka

PHP i MySQL. Od podstaw. Wydanie IV

PHP i MySQL. Od podstaw. Wydanie IV

W. Jason Gilmore

Ebook

Świat zaawansowanych stron WWW w zasięgu Twoich rąk!

  • Jak przygotować środowisko pracy?
  • Jak wykorzystać technologię AJAX w połączeniu z PHP?
  • Jak połączyć PHP i MySQL w jedną całość?

PHP i MySQL to duet, na którym opiera się ogromna większość ciut bardziej zaawansowanych stron w sieci. Czemu zawdzięcza on swą popularność? Niezwykłemu dopasowaniu do potrzeb, łatwej konfiguracji oraz ogromnej społeczności, zawsze chętnej do pomocy. Kiedy zaprzęgniesz ten zestaw do pracy, już po kilku godzinach zobaczysz jej pierwsze efekty!

Co zrobić, żeby osiągnąć jeszcze więcej? Nic prostszego! Sięgnij po tę książkę i zacznij swoją przygodę z PHP oraz MySQL. Na samym początku dowiesz się, jak przygotować środowisko pracy, oraz poznasz podstawy programowania w języku PHP. Potem płynnie przejdziesz do zdobywania wiedzy na temat programowania obiektowego, wyrażeń regularnych, obsługi formularzy HTML oraz integracji z usługami katalogowymi LDAP. Nauczysz się wykorzystywać mechanizm sesji, technologię AJAX oraz Zend Framework. Po przeprowadzeniu Cię przez komplet informacji na temat PHP autor przedstawi Ci bazę danych MySQL. Poznasz jej mocne elementy, sposoby podłączania klientów oraz podstawy administracji. Może w to nie wierzysz, ale po przeczytaniu tej książki nawet skomplikowane mechanizmy bazy MySQL nie będą Ci obce! Na sam koniec odkryjesz, jak wiedzę na temat PHP oraz MySQL połączyć w całość i zrealizować Twój nawet najbardziej ambitny projekt! Książka ta jest obowiązkową pozycją na półce każdego entuzjasty tworzenia dynamicznych stron WWW!

  • Przygotowanie środowiska do pracy
  • Podstawy PHP - typy danych, zmienne, funkcje, tablice
  • Programowanie obiektowe w PHP
  • Obsługa wyjątków i błędów
  • Operacje na łańcuchach znaków, wyrażenia regularne
  • Obsługa plików i korzystanie z funkcji systemu operacyjnego
  • Wykorzystanie pakietów PEAR
  • Operacje na dacie i czasie
  • Obsługa formularzy HTML
  • Uwierzytelnianie użytkowników
  • Integracja PHP z LDAP
  • Zarządzanie sesją
  • Szablony stron - pakiet Smarty
  • Zabezpieczanie witryn WWW
  • Zastosowanie technologii AJAX z jQuery
  • Wykorzystanie Zend Framework
  • Możliwości bazy danych MySQL
  • Instalacja i konfiguracja serwera MySQL
  • Mechanizmy składowania i typy danych w MySQL
  • Zabezpieczanie serwerów MySQL
  • Pobieranie danych z bazy i operacje na nich w PHP
  • Wykorzystanie widoków
  • Mechanizm transakcji

Sprawdź, jak wykorzystać możliwości PHP i MySQL w zakresie projektowania stron internetowych!

O autorze (19)

O recenzencie technicznym (21)

Podziękowania (23)

Wprowadzenie (25)

Rozdział 1. Prezentacja PHP (27)

  • Historia (28)
    • PHP 4 (28)
    • PHP 5 (29)
    • PHP 5.3 (30)
    • PHP 6 (30)
  • Ogólne cechy języka (31)
    • Praktyczność (31)
    • Możliwości (32)
    • Potencjał (32)
    • Cena (33)
  • Podsumowanie (33)

Rozdział 2. Konfiguracja środowiska (35)

  • Wymagania wstępne instalacji (36)
    • Pobieranie serwera Apache (36)
    • Pobieranie PHP (36)
    • Pobieranie dokumentacji (37)
  • Instalacja Apache i PHP w systemie Linux (38)
  • Instalacja Apache i PHP w systemie Windows (39)
  • Instalacja serwera IIS i PHP w systemie Windows (41)
  • Testowanie instalacji (41)
  • Konfiguracja PHP (43)
    • Konfiguracja PHP w trakcie tworzenia w systemach Linux (43)
    • Modyfikowanie PHP budowanego w systemie Windows (44)
  • Konfiguracja PHP w trakcie jego działania (44)
    • Korzystanie z dyrektyw konfiguracyjnych PHP (44)
    • Dyrektywy konfiguracyjne PHP (46)
  • Wybór edytora (59)
    • Adobe Dreamweaver CS5 (59)
    • Notepad++ (60)
    • PDT (PHP Development Tools) (60)
    • Zend Studio (60)
  • Wybór firmy udostępniającej serwery WWW (60)
    • Siedem pytań do firm udostępniających serwery WWW (61)
  • Podsumowanie (62)

Rozdział 3. Podstawy PHP (63)

  • Umieszczanie kodu PHP na stronach WWW (63)
    • Domyślna składnia (64)
    • Krótkie znaczniki (64)
    • Skrypt (65)
    • Składnia ASP (65)
    • Osadzanie wielu fragmentów kodu (65)
  • Komentowanie kodu (66)
    • Jednowierszowe komentarze w stylu C++ (66)
    • Składnia skryptów powłoki (66)
    • Komentarze wielowierszowe, składnia C (67)
  • Generowanie danych wyjściowych (67)
    • Instrukcja print() (67)
    • Instrukcja echo() (68)
    • Instrukcja printf() (69)
    • Instrukcja sprintf() (70)
  • Typy danych dostępne w PHP (70)
    • Skalarne typy danych (70)
    • Złożone typy danych (72)
    • Konwersja typów danych przy użyciu rzutowania (73)
    • Adaptacja typów danych poprzez ich zmienianie (74)
    • Funkcje związane z typami danych (75)
    • Funkcje identyfikujące typ (75)
  • Identyfikatory (76)
  • Zmienne (76)
    • Deklaracje zmiennych (76)
    • Zasięg zmiennych (78)
    • Zmienne superglobalne (80)
  • Stałe (84)
    • Definiowanie stałych (85)
  • Wyrażenia (85)
    • Operandy (85)
    • Operatory (85)
  • Umieszczanie wartości w łańcuchach znaków (91)
    • Cudzysłowy (91)
    • Sekwencje sterujące (91)
    • Apostrofy (92)
    • Nawiasy klamrowe (92)
    • Składnia heredoc (93)
    • Składnia nowdoc (93)
  • Struktury sterujące (93)
    • Instrukcje warunkowe (94)
    • Pętle (96)
    • Instrukcje dołączania plików (101)
  • Podsumowanie (103)

Rozdział 4. Funkcje (105)

  • Wywoływanie funkcji (105)
  • Tworzenie funkcji (106)
    • Przekazywanie argumentów przez wartość (107)
    • Przekazywanie przez referencję (107)
    • Domyślne wartości argumentów (108)
    • Stosowanie informacji o typie (109)
    • Zwracanie wartości z funkcji (109)
    • Funkcje rekurencyjne (110)
  • Biblioteki funkcji (113)
  • Podsumowanie (113)

Rozdział 5. Tablice (115)

  • Czym jest tablica? (115)
  • Tworzenie tablic (116)
    • Tworzenie tablic przy użyciu array() (117)
    • Odczytywanie elementów tablicy przy użyciu list() (118)
    • Zapisywanie w tablicy predefiniowanego zakresu wartości (118)
    • Sprawdzanie, czy zmienna jest tablicą (119)
  • Wyświetlanie zawartości tablic (119)
    • Wyświetlanie tablic w ramach testowania skryptu (120)
  • Dodawanie i usuwanie elementów tablic (121)
    • Dodawanie wartości na początku tablicy (121)
    • Dodawanie elementów na końcu tablicy (121)
    • Usuwanie elementu z początku tablicy (121)
  • Odnajdywanie elementów w tablicach (122)
    • Przeszukiwanie tablic (122)
    • Przeszukiwanie tablic z kluczami asocjacyjnymi (122)
    • Poszukiwanie wartości w tablicach asocjacyjnych (123)
    • Pobieranie kluczy tablicy (123)
    • Pobieranie wartości z tablicy (123)
  • Przeglądanie tablic (124)
    • Pobieranie klucza aktualnego elementu tablicy (124)
    • Pobieranie wartości aktualnego elementu tablicy (124)
    • Pobieranie aktualnego klucza i wartości (125)
    • Przesuwanie wskaźnika tablicy (125)
    • Przekazywanie wartości z tablicy do funkcji (126)
  • Określanie wielkości oraz unikalności tablicy (127)
    • Określanie wielkości tablicy (127)
    • Określanie częstotliwości występowania wartości (127)
    • Określanie unikalnych elementów tablicy (128)
  • Sortowanie tablic (128)
    • Zmiana kolejności elementów tablicy (129)
    • Zamiana kluczy i wartości (129)
    • Sortowanie tablic (129)
  • Łączenie i dzielenie tablic na różne sposoby (134)
    • Łączenie tablic (134)
    • Rekurencyjne łączenie tablic (134)
    • Łączenie dwóch tablic (135)
    • Pobieranie fragmentu tablicy (135)
    • Wycinanie elementów z tablicy (136)
    • Wyznaczanie części wspólnej tablic (136)
    • Określanie części wspólnej tablic asocjacyjnych (137)
    • Określanie różnicy tablic (137)
    • Określanie różnicy tablic asocjacyjnych (138)
  • Inne przydatne funkcje operujące na tablicach (139)
    • Zwracanie losowego zbioru kluczy (139)
    • Losowa zmiana kolejności elementów tablicy (139)
    • Dodawanie wartości tablicy (139)
    • Dzielenie tablicy (140)
  • Podsumowanie (140)

Rozdział 6. Programowanie obiektowe (141)

  • Zalety programowania obiektowego (141)
    • Hermetyzacja (141)
    • Dziedziczenie (142)
    • Polimorfizm (142)
  • Kluczowe pojęcia programowania obiektowego (143)
    • Klasy (143)
    • Obiekty (144)
    • Właściwości (144)
    • Stałe (149)
    • Metody (150)
  • Konstruktory i destruktory (153)
    • Konstruktory (153)
    • Destruktory (156)
  • Składowe statyczne (156)
  • Słowo kluczowe instanceof (157)
  • Funkcje pomocnicze (158)
    • Sprawdzanie, czy istnieje metoda (159)
  • Automatyczne wczytywanie klas (159)
  • Podsumowanie (160)

Rozdział 7. Zaawansowane zagadnienia programowania obiektowego (161)

  • Zaawansowane mechanizmy obiektowe niedostępne w PHP (162)
  • Klonowanie obiektów (162)
    • Przykład klonowania obiektu (162)
    • Metoda __clone() (163)
  • Dziedziczenie (164)
    • Dziedziczenie klas (165)
    • Dziedziczenie i konstruktory (166)
    • Dziedziczenie i późne wiązanie statyczne (168)
  • Interfejsy (168)
    • Implementacja pojedynczego interfejsu (170)
    • Implementacja kilku interfejsów (170)
  • Klasy abstrakcyjne (171)
  • Prezentacja przestrzeni nazw (172)
  • Podsumowanie (174)

Rozdział 8. Obsługa błędów i wyjątków (175)

  • Dyrektywy konfiguracyjne (176)
  • Rejestracja błędów (178)
  • Obsługa wyjątków (181)
    • Dlaczego obsługa wyjątków jest wygodna? (181)
    • Implementacja obsługi wyjątków w języku PHP (182)
    • Wyjątki SPL (186)
  • Podsumowanie (187)

Rozdział 9. Łańcuchy znaków i wyrażenia regularne (189)

  • Wyrażenia regularne (190)
    • Składnia wyrażeń regularnych (w stylu POSIX) (190)
    • Funkcje obsługi wyrażeń regularnych (rozszerzony standard POSIX) (192)
    • Składnia wyrażeń regularnych (zgodnych z Perl) (195)
  • Inne funkcje operujące na łańcuchach znaków (201)
    • Określanie długości łańcucha znaków (202)
    • Porównywanie dwóch łańcuchów znaków (202)
    • Zmiana wielkości liter (204)
    • Konwersja łańcucha znaków na kod HTML i na odwrót (206)
  • Alternatywy dla funkcji używających wyrażeń regularnych (210)
    • Dopełnianie oraz przycinanie łańcuchów znaków (216)
    • Zliczanie znaków i słów (217)
  • Stosowanie PEAR - pakiet Validate_US (219)
    • Instalowanie pakietu Validate_US (220)
    • Stosowanie pakietu Validate_US (220)
  • Podsumowanie (221)

Rozdział 10. Obsługa plików i korzystanie z systemu operacyjnego (223)

  • Pobieranie informacji o plikach i katalogach (224)
    • Przetwarzanie ścieżki (224)
    • Określanie wielkości pliku, katalogu i dysku (225)
    • Określanie czasu dostępu i modyfikacji (228)
  • Operacje na plikach (229)
    • Pojęcie zasobu (229)
    • Rozpoznawanie znaków nowego wiersza (229)
    • Rozpoznawanie znaku końca pliku (229)
    • Otwieranie i zamykanie pliku (230)
    • Odczytywanie zawartości plików (231)
    • Przesuwanie wskaźnika pliku (237)
    • Odczytywanie zawartości katalogu (238)
  • Wykonywanie poleceń systemowych (239)
    • Usuwanie katalogu (239)
  • Wykonywanie programów z poziomu systemu operacyjnego (240)
    • Zabezpieczanie danych wejściowych (241)
    • Funkcje do wykonywania programów (242)
  • Podsumowanie (244)

Rozdział 11. PEAR (245)

  • Potęga PEAR - konwersja formatów liczbowych (246)
  • Instalacja i aktualizacja PEAR (246)
    • Instalacja PEAR (247)
    • PEAR i firmy udostępniające serwery (248)
    • Aktualizacja PEAR (248)
  • Korzystanie z menedżera pakietów PEAR (248)
    • Przeglądanie zainstalowanych pakietów PEAR (249)
    • Pobieranie informacji o zainstalowanych pakietach (249)
    • Instalacja wybranego pakietu PEAR (250)
    • Dołączanie pakietów do skryptów (251)
    • Aktualizacja pakietów (252)
    • Odinstalowanie pakietu (253)
    • Użycie wcześniejszej wersji pakietu (253)
  • Menedżer pakietów Pyrus (253)
    • Instalacja menedżera Pyrus (253)
  • Podsumowanie (254)

Rozdział 12. Data i czas (255)

  • Uniksowy znacznik czasu (255)
  • Biblioteka funkcji do obsługi dat i czasu (256)
    • Weryfikacja dat (256)
    • Formatowanie dat i czasu (256)
    • Konwersja znacznika czasu na zrozumiałą postać (259)
    • Posługiwanie się znacznikami czasu (260)
  • Sztuka czasu (261)
    • Wyświetlanie zlokalizowanych dat i czasu (261)
    • Wyświetlanie daty ostatniej modyfikacji witryny (265)
    • Określanie liczby dni w bieżącym miesiącu (265)
    • Określanie liczby dni w podanym miesiącu (265)
    • Wyliczanie daty na podstawie różnicy w dniach (266)
  • Usprawnienia obsługi dat i czasu w PHP 5.1+ (266)
    • Konstruktor klasy DateTime (267)
    • Formatowanie dat (267)
    • Określanie daty po utworzeniu obiektu (267)
    • Określanie czasu po utworzeniu obiektu (268)
    • Modyfikowanie dat i czasu (268)
    • Obliczanie różnicy pomiędzy dwiema datami (268)
  • Podsumowanie (269)

Rozdział 13. Obsługa formularzy HTML (271)

  • PHP i formularze HTML (271)
    • Prosty przykład (272)
  • Weryfikacja danych z formularzy (273)
    • Usuwanie plików (273)
    • Cross-site scripting (274)
    • Zabezpieczanie danych wprowadzanych przez użytkowników (275)
    • Weryfikacja i zabezpieczanie danych przy użyciu rozszerzenia Filter (277)
    • Korzystanie ze złożonych komponentów formularzy (278)
  • Wykorzystanie PEAR - HTML_QuickForm2 (280)
    • Instalacja pakietu HTML_QuickForm2 (281)
    • Tworzenie i weryfikacja danych prostego formularza (281)
  • Podsumowanie (283)

Rozdział 14. Uwierzytelnianie użytkowników (285)

  • Uwierzytelnianie w oparciu o protokół HTTP (285)
    • Korzystanie z plików .htaccess serwera Apache (286)
  • Uwierzytelnianie przy użyciu możliwości PHP (287)
    • Zmienne PHP związane z uwierzytelnianiem (287)
    • Użyteczne funkcje (287)
    • Uwierzytelnianie w oparciu o stałe dane (289)
    • Uwierzytelnianie w oparciu o pliki (289)
    • Uwierzytelnianie z wykorzystaniem bazy danych (291)
    • Wykorzystanie możliwości PEAR - pakiet Auth_HTTP (292)
  • Zarządzanie danymi uwierzytelniającymi (294)
    • Testowanie siły hasła przy użyciu biblioteki CrackLib (294)
    • Odzyskiwanie haseł przy użyciu jednorazowych adresów URL (296)
  • Podsumowanie (298)

Rozdział 15. Obsługa przesyłania plików na serwer (299)

  • Przesyłanie plików przy użyciu protokołu HTTP (299)
  • Obsługa przesyłanych plików przy użyciu PHP (300)
    • Dyrektywy konfiguracyjne związane z przesyłaniem plików (300)
    • Tablica $_FILES (302)
    • Funkcje PHP do obsługi przesyłanych plików (302)
    • Komunikaty błędów (304)
    • Prosty przykład (304)
  • Wykorzystanie PEAR - HTTP_Upload (305)
    • Instalacja pakietu HTTP_Upload (305)
    • Przesyłanie pliku na serwer (306)
    • Uzyskiwanie informacji o przesłanym pliku (306)
    • Obsługa przesyłania większej liczby plików (307)
  • Podsumowanie (308)

Rozdział 16. Zagadnienia sieciowe (309)

  • DNS, usługi i serwery (310)
    • DNS (310)
    • Usługi (313)
    • Tworzenie połączeń używających gniazd (314)
  • Poczta elektroniczna (316)
    • Dyrektywy konfiguracyjne (316)
    • Wysyłanie wiadomości ze skryptów PHP (317)
  • Popularne operacje sieciowe (321)
    • Testowanie połączenia z serwerem (321)
    • Tworzenie skanera portów (322)
    • Tworzenie konwertera podsieci (322)
    • Testowanie przepustowości łącza użytkownika (324)
  • Podsumowanie (324)

Rozdział 17. PHP i LDAP (325)

  • Stosowanie LDAP w języku PHP (326)
    • Konfiguracja LDAP w PHP (326)
    • Nawiązywanie połączenia z serwerem LDAP (326)
    • Pobieranie danych z serwera LDAP (329)
    • Określanie liczby zwróconych rekordów (331)
    • Sortowanie rekordów LDAP (332)
    • Wstawianie danych LDAP (332)
    • Aktualizacja danych LDAP (334)
    • Usuwanie danych z serwera LDAP (334)
    • Operacje na rozpoznawalnych nazwach (335)
    • Obsługa błędów (336)
  • Podsumowanie (337)

Rozdział 18. Obsługa sesji (339)

  • Czym jest obsługa sesji? (339)
    • Proces obsługi sesji (340)
  • Dyrektywy konfiguracyjne (340)
    • Zarządzanie sposobem przechowywania danych sesyjnych (340)
    • Określanie ścieżki do plików sesji (341)
    • Automatyczne włączanie sesji (341)
    • Określanie nazwy sesji (342)
    • Wybór ciasteczek lub przepisywania adresów URL (342)
    • Automatyczne przepisywanie adresów URL (342)
    • Określanie czasu istnienia ciasteczka (342)
    • Określanie ścieżki ciasteczka (342)
    • Określanie katalogów do przechowywania stron wykorzystujących sesje (343)
  • Korzystanie z sesji (344)
    • Rozpoczynanie sesji (344)
    • Usuwanie sesji (345)
    • Ustawianie i pobieranie identyfikatora sesji (345)
    • Tworzenie i usuwanie zmiennych sesyjnych (346)
    • Kodowanie i dekodowanie danych sesyjnych (346)
  • Praktyczne przykłady stosowania sesji (348)
    • Automatyczne logowanie powracających użytkowników (348)
    • Generowanie listy ostatnio odwiedzonych stron (350)
  • Tworzenie własnych procedur obsługi sesji (351)
    • Określanie funkcji stosowanych w obsłudze sesji (352)
    • Obsługa sesji z użyciem bazy danych MySQL (352)
  • Podsumowanie (355)

Rozdział 19. Stosowanie szablonów z pakietem Smarty (357)

  • Czym jest mechanizm obsługi szablonów? (357)
  • Przedstawienie mechanizmu Smarty (359)
  • Instalacja Smarty (360)
  • Korzystanie ze Smarty (361)
  • Logika prezentacji w szablonach Smarty (363)
    • Komentarze (363)
    • Modyfikatory zmiennych (363)
    • Struktury sterujące (366)
    • Instrukcje (369)
  • Tworzenie plików konfiguracyjnych (371)
    • Korzystanie ze zmiennych konfiguracyjnych (372)
  • Stosowanie arkuszy stylów w szablonach Smarty (373)
  • Wykorzystanie pamięci podręcznej (374)
    • Określanie czasu przechowywania stron (374)
    • Eliminowanie narzutów dzięki użyciu metody isCached() (375)
    • Przechowywanie w pamięci podręcznej wielu wersji tego samego szablonu (375)
    • Kilka ostatnich uwag o stosowaniu pamięci podręcznej (376)
  • Podsumowanie (377)

Rozdział 20. Usługi sieciowe (379)

  • Dlaczego powstały usługi sieciowe? (380)
  • RSS (381)
    • Format RSS (382)
  • Prezentacja SimplePie (383)
    • Instalacja SimplePie (384)
    • Przetwarzanie kanału RSS przy użyciu SimplePie (384)
    • Przetwarzanie większej liczby kanałów (386)
  • SimpleXML (387)
    • Wczytywanie dokumentów XML (387)
    • Analiza XML (389)
  • Podsumowanie (391)

Rozdział 21. Zabezpieczanie witryn WWW (393)

  • Bezpieczna konfiguracja PHP (394)
    • Dyrektywy konfiguracyjne związane z bezpieczeństwem (394)
  • Ukrywanie szczegółów konfiguracji (395)
    • Ukrywanie serwera Apache (396)
    • Ukrywanie PHP (396)
  • Ukrywanie wrażliwych danych (398)
    • Ukrywanie głównego katalogu dokumentów (398)
    • Zabronienie dostępu do plików z określonymi rozszerzeniami (398)
  • Szyfrowanie danych (399)
    • Funkcje szyfrujące PHP (399)
    • Pakiet MCrypt (400)
  • Podsumowanie (401)

Rozdział 22. Korzystanie z technologii Ajax przy użyciu jQuery i PHP (403)

  • Przedstawienie Ajaksa (403)
  • Prezentacja jQuery (405)
    • Instalacja jQuery (405)
    • Prosty przykład (405)
    • Odpowiadanie na zdarzenia (406)
    • Biblioteka jQuery i DOM (407)
  • Mechanizm weryfikacji dostępności nazwy użytkownika (409)
    • Określanie, czy nazwa użytkownika jest dostępna (410)
  • Podsumowanie (412)

Rozdział 23. Tworzenie witryn dla odbiorców z całego świata (415)

  • Tłumaczenie witryn przy użyciu pakietu Gettext (416)
    • Etap 1. Aktualizacja skryptów (416)
    • Etap 2. Tworzenie repozytorium lokalizacji (417)
    • Etap 3. Tworzenie plików tłumaczeń (418)
    • Etap 4. Przetłumaczenie tekstów (418)
    • Etap 5. Generowanie plików binarnych (419)
    • Etap 6. Określanie odpowiedniego języka w skryptach (419)
  • Lokalizacja dat, liczb i godzin (420)
  • Podsumowanie (421)

Rozdział 24. Wprowadzenie do stosowania Zend Framework (423)

  • Przedstawienie wzorca MVC (423)
  • Szkielety aplikacji PHP (425)
    • CakePHP (426)
    • Solar (426)
    • Symfony (426)
    • Zend Framework (426)
  • Przedstawienie Zend Framework (427)
    • Instalacja Zend Framework (428)
    • Tworzenie pierwszej witryny używającej Zend Framework (428)
  • Podsumowanie (439)

Rozdział 25. Prezentacja bazy danych MySQL (441)

  • Dlaczego MySQL jest tak popularny? (441)
    • Elastyczność (442)
    • Moc (442)
    • Elastyczne opcje licencyjne (444)
    • (Hiper)aktywna społeczność użytkowników (445)
  • Ewolucja serwera MySQL (445)
    • MySQL 4 (445)
    • MySQL 5 (446)
    • MySQL 5.1 (447)
    • MySQL 5.4 oraz 5.5 (447)
  • Najważniejsi użytkownicy serwerów MySQL (448)
    • craigslist (448)
    • Wikipedia (448)
    • Inni znaczący użytkownicy (448)
  • Podsumowanie (448)

Rozdział 26. Instalacja i konfiguracja serwera MySQL (451)

  • Pobieranie serwera MySQL (451)
  • Instalacja MySQL (452)
    • Instalacja serwera MySQL w systemie Linux (452)
    • Instalacja i konfiguracja MySQL w systemie Windows (455)
  • Określanie hasła administratora (457)
  • Uruchamianie i zatrzymywanie serwera MySQL (458)
    • Ręczna kontrola pracy procesu (458)
  • Konfiguracja i optymalizacja serwera MySQL (459)
    • Skrypt mysqld_safe (459)
    • Parametry konfiguracyjne i optymalizacyjne (460)
  • Plik my.cnf (463)
  • Konfiguracja PHP pod kątem współpracy z MySQL (465)
    • Rekonfiguracja PHP w systemie Linux (465)
    • Rekonfiguracja PHP w systemie Windows (465)
  • Podsumowanie (466)

Rozdział 27. Wiele klientów MySQL (467)

  • Prezentacja klientów obsługiwanych z wiersza poleceń (467)
    • Klient mysql (467)
    • Klient mysqladmin (475)
    • Inne przydatne klienty (477)
    • Opcje klientów (480)
  • Klienty MySQL z graficznym interfejsem użytkownika (482)
  • Aplikacja phpMyAdmin (483)
  • Podsumowanie (484)

Rozdział 28. Mechanizmy składowania i typy danych MySQL (485)

  • Mechanizmy składowania (485)
    • MyISAM (486)
    • IBMDB2I (488)
    • InnoDB (488)
    • MEMORY (489)
    • MERGE (490)
    • FEDERATED (490)
    • ARCHIVE (492)
    • CSV (492)
    • EXAMPLE (492)
    • BLACKHOLE (492)
    • Pytania i odpowiedzi dotyczące mechanizmów składowania (493)
  • Typy danych i atrybuty (494)
    • Typy danych (494)
  • Operacje na bazach danych i tabelach (502)
    • Operacje na bazach danych (502)
    • Operacje na tabelach (504)
    • Modyfikowanie struktury tabel (506)
    • Baza danych INFORMATION_SCHEMA (507)
  • Podsumowanie (509)

Rozdział 29. Zabezpieczanie serwerów MySQL (511)

  • Co należy zrobić na samym początku? (512)
  • Zabezpieczanie procesu serwera MySQL (513)
  • System uprawnień serwera MySQL (513)
    • Sposób działania systemu uprawnień (514)
    • Gdzie są przechowywane informacje o uprawnieniach? (516)
  • Zarządzanie użytkownikami i uprawnieniami (523)
    • Tworzenie użytkowników (524)
    • Usuwanie użytkowników (524)
    • Zmiana nazwy istniejących użytkowników (524)
    • Polecenia GRANT i REVOKE (525)
    • Przeglądanie posiadanych uprawnień (530)
  • Ograniczanie dostępu do zasobów (530)
  • Bezpieczne połączenia z serwerem MySQL (531)
    • Opcje polecenia GRANT (531)
    • Opcje SSL (533)
    • Uruchamianie serwera MySQL obsługującego bezpieczne połączenia (534)
    • Nawiązywanie połączenia przy użyciu klienta obsługującego SSL (534)
    • Określanie opcji SSL w pliku konfiguracyjnym my.cnf (534)
  • Podsumowanie (535)

Rozdział 30. Współpraca PHP i MySQL (537)

  • Wymagania instalacji (538)
    • Włączanie rozszerzenia mysqli w systemach Linux oraz Unix (538)
    • Włączanie rozszerzenia mysqli w systemie Windows (538)
    • Stosowanie sterownika MySQL (538)
    • Zarządzanie uprawnieniami użytkowników (539)
    • Korzystanie z przykładowych danych (539)
  • Praktyczne wykorzystanie rozszerzenia mysqli (540)
    • Konfiguracja i nawiązywanie połączenia (540)
    • Obsługa błędów połączenia (541)
    • Pobieranie informacji o błędach (541)
    • Przechowywanie informacji o połączeniu w osobnym pliku (542)
  • Operacje na bazie danych (543)
    • Przesyłanie zapytań do bazy danych (543)
    • Przetwarzanie wyników zapytania (546)
    • Określanie liczby zwróconych oraz zmodyfikowanych wierszy (547)
    • Korzystanie z poleceń przygotowanych (548)
  • Stosowanie transakcji (552)
    • Włączanie trybu automatycznego zatwierdzania (553)
    • Zatwierdzanie transakcji (553)
    • Wycofywanie transakcji (553)
  • Podsumowanie (553)

Rozdział 31. Prezentacja PDO (555)

  • Kolejna warstwa abstrakcji bazy danych? (556)
  • Stosowanie PDO (557)
    • Instalacja PDO (557)
    • Obsługiwane bazy danych (558)
    • Nawiązywanie połączenia z serwerem i wybór bazy danych (558)
    • Obsługa błędów (560)
    • Pobieranie i ustawianie atrybutów (562)
    • Wykonywanie zapytań (563)
    • Prezentacja poleceń przygotowanych (564)
    • Pobieranie danych (567)
    • Tworzenie powiązanych kolumn (569)
    • Stosowanie transakcji (570)
  • Podsumowanie (571)

Rozdział 32. Podprogramy składowane (573)

  • Czy warto używać podprogramów składowanych? (574)
    • Zalety podprogramów składowanych (574)
    • Wady podprogramów składowanych (574)
  • Implementacja podprogramów składowanych w serwerze MySQL (575)
    • Tworzenie podprogramów składowanych (575)
    • Deklarowanie i ustawianie zmiennych (578)
    • Wykonywanie podprogramu składowanego (579)
    • Tworzenie i stosowanie złożonych podprogramów składowanych (579)
    • Wywoływanie podprogramu z innego podprogramu (586)
    • Modyfikowanie podprogramów składowanych (586)
    • Usuwanie podprogramów składowanych (586)
    • Wyświetlanie informacji o statusie podprogramu (587)
    • Wyświetlanie polecenia użytego do utworzenia podprogramu (588)
    • Obsługa warunków (588)
  • Integracja podprogramów składowanych w aplikacjach internetowych (589)
    • Strona do wyliczania i prezentacji premii (589)
    • Pobieranie wielu wierszy wyników (590)
  • Podsumowanie (590)

Rozdział 33. Wyzwalacze (591)

  • Prezentacja wyzwalaczy (591)
    • Jakie są zastosowania wyzwalaczy? (592)
    • Wykonywanie akcji przed zdarzeniem (592)
    • Wykonywanie akcji po zdarzeniu (592)
    • Wyzwalacze wykonywane przed zdarzeniem (BEFORE) i po nim (AFTER) (593)
  • Obsługa wyzwalaczy w serwerze MySQL (594)
    • Tworzenie wyzwalaczy (594)
    • Wyświetlanie istniejących wyzwalaczy (596)
    • Modyfikacja wyzwalaczy (598)
    • Usuwanie wyzwalaczy (598)
  • Wykorzystanie wyzwalaczy w aplikacjach internetowych (598)
  • Podsumowanie (599)

Rozdział 34. Widoki (601)

  • Przedstawienie widoków (602)
  • Korzystanie z widoków w serwerze MySQL (602)
    • Tworzenie i wykonywanie widoków (602)
    • Wyświetlanie informacji o widokach (607)
    • Modyfikowanie widoków (609)
    • Usuwanie widoków (609)
    • Widoki aktualizujące (609)
  • Stosowanie widoków w aplikacjach internetowych (610)
  • Podsumowanie (611)

Rozdział 35. Praktyczne przykłady stosowania zapytań (613)

  • Przykładowe dane (614)
  • Tabelaryczna prezentacja danych przy wykorzystaniu PEAR (614)
    • Instalacja pakietu HTML_Table (615)
    • Tworzenie prostej tabeli (615)
    • Tworzenie czytelniejszych wierszy (616)
    • Generowanie tabel na podstawie informacji z bazy danych (617)
  • Sortowanie wyników (618)
  • Podział wyników na strony (619)
  • Wyświetlanie numerów stron (621)
  • Pobieranie danych z wielu tabel przy użyciu podzapytań (623)
    • Porównywanie przy użyciu podzapytań (624)
    • Stosowanie podzapytań do sprawdzania istnienia danych (624)
    • Pielęgnacja baz danych przy użyciu podzapytań (625)
    • Stosowanie podzapytań w skryptach PHP (625)
  • Przeglądanie wyników przy wykorzystaniu kursora (626)
    • Podstawowe informacje o kursorach (626)
    • Tworzenie kursora (627)
    • Otwieranie kursora (627)
    • Korzystanie z kursora (627)
    • Zamykanie kursora (628)
    • Stosowanie kursorów w skryptach PHP (628)
  • Podsumowanie (629)

Rozdział 36. Indeksacja i wyszukiwanie (631)

  • Indeksacja baz danych (631)
    • Indeks główny (632)
    • Indeksy unikalne (633)
    • Indeksy normalne (634)
    • Indeksy pełnotekstowe (635)
    • Indeksacja - najlepsze praktyki (639)
  • Wyszukiwanie z użyciem formularzy HTML (639)
    • Realizacja prostego wyszukiwania (639)
    • Rozszerzanie możliwości wyszukiwania (640)
    • Stosowanie wyszukiwania pełnotekstowego (642)
  • Podsumowanie (643)

Rozdział 37. Transakcje (645)

  • Co to jest transakcja? (645)
  • Możliwości stosowania transakcji na serwerze MySQL (646)
    • Wymagania systemowe (646)
    • Tworzenie tabeli (646)
  • Przykładowy projekt (647)
    • Tworzenie tabel i przykładowych danych (647)
    • Realizacja przykładowej transakcji (648)
    • Rady dotyczące korzystania z transakcji (650)
  • Tworzenie aplikacji transakcyjnych w PHP (650)
    • Modyfikacja wyprzedaży (650)
  • Podsumowanie (652)

Rozdział 38. Importowanie i eksportowanie danych (653)

  • Przykładowa tabela (653)
  • Separacja poszczególnych elementów danych (654)
  • Importowanie danych (654)
    • Importowanie danych przy użyciu polecenia LOAD DATA INFILE (655)
    • Importowanie danych przy użyciu klienta mysqlimport (658)
    • Wczytywanie danych przy użyciu skryptu PHP (660)
  • Eksportowanie danych (661)
    • Polecenie SELECT INTO OUTFILE (661)
  • Podsumowanie (664)

Skorowidz (665)

  • Tytuł: PHP i MySQL. Od podstaw. Wydanie IV
  • Autor: W. Jason Gilmore
  • Tytuł oryginału: Beginning PHP and MySQL: From Novice to Professional
  • Tłumaczenie: Piotr Rajca
  • ISBN: 978-83-246-3598-6, 9788324635986
  • Data wydania: 2011-10-28
  • Format: Ebook
  • Identyfikator pozycji: phmso4
  • Wydawca: Helion