PHP i MySQL. Tworzenie stron WWW. Vademecum profesjonalisty. Wydanie V
Zawiera darmowych rozdziałów: 12 | |
Stron w książce: 712 | Udostępniono darmowych stron: 22 |
Data wydania: 2017-09-25 | Przejdź na stronę księgarni |
Czytano online: 3 | Cena książki drukowanej: 109,00 zł |
Język wydania: Polish | Wydawnictwo: Helion |
Pobierz pdf | Czytaj online ( Alt+1 ) |
PHP i MySQL — rozwiązanie dla dynamicznych witryn!
Język PHP i serwer bazy danych MySQL to niezwykle popularne narzędzia o otwartym kodzie źródłowym. Wiele świetnych, dynamicznych stron WWW powstało właśnie dzięki połączeniu tych dwóch narzędzi. Ogromne możliwości PHP oraz elastyczność i szybkość MySQL, bezustanne rozwijanie tych technologii, a także niezawodna i chętna do pomocy społeczność sprawiają, że tworzenie profesjonalnych, interaktywnych witryn WWW z wykorzystaniem synergii PHP i MySQL jest pracą przyjemną, efektywną i satysfakcjonującą!
Trzymasz w ręku piąte wydanie poradnika dla projektantów WWW, po który twórcy stron sięgają wyjątkowo często. Książka została poprawiona, zaktualizowana o PHP 7 i rozszerzona o prezentację najnowszych możliwości MySQL. Zawiera przejrzysty opis podstaw PHP oraz konfiguracji i pracy z bazą danych MySQL. Przedstawiono w niej zasady poprawnego projektowania, pisania i wdrażania aplikacji. Uwzględniono też zagadnienia dotyczące bezpieczeństwa i uwierzytelniania użytkowników oraz implementacji takich rozwiązań w rzeczywistych witrynach WWW. Nie zabrakło tu również gruntownego wprowadzenia do zagadnienia integracji części klienckiej i serwerowej aplikacji internetowych za pomocą JavaScriptu.
Najważniejsze zagadnienia przedstawione w książce:
- podstawowe konstrukcje PHP i ich poprawne stosowanie
- projektowanie, tworzenie i utrzymywanie bazy danych SQL jako elementu aplikacji WWW
- zaawansowane techniki PHP i funkcje MySQL
- usuwanie błędów i ich rejestrowanie w pliku dziennika
- korzystanie z frameworka Laravel
- integracja aplikacji z mediami społecznościowymi
Laura Thomson — jest dyrektorem ds. technicznych w Mozilla Corporation. Wcześniej była prezesem firm OmniTI i Tangled Web Design. W wolnych chwilach jeździ konno lub dyskutuje o idei wolnego oprogramowania.
Luke Welling — jest architektem oprogramowania i bywalcem konferencji poświęconych programowaniu aplikacji internetowych. Jakiś czas temu wykładał inżynierię oprogramowania na Uniwersytecie w Melbourne w Australii. W wolnym czasie zajmuje się propagowaniem zalet wolnego oprogramowania.
jQuery prezentacja
W darmowym rozdziale opisano selektory jQuery, przydatne zdarzenia jQuery. Poznamy również dynamiczny formularz jQuery, czat PHP.
Darmowy rozdział:
Rozdział 23. Integracja JavaScriptu i PHP (477)
- Przedstawienie technologii AJAX (477)
- Krótka prezentacja jQuery (478)
-
Stosowanie jQuery w aplikacjach internetowych (478)
- Podstawowe pojęcia i techniki związane ze stosowaniem jQuery (479)
- Stosowanie selektorów jQuery (479)
-
Stosowanie jQuery, technologii AJAX i skryptów PHP (487)
- Ajaksowe pogawędki - skrypt serwera (487)
- Metody jQuery służące do korzystania z technologii AJAX (490)
- Kliencka część aplikacji do prowadzenia pogawędek (493)
- Propozycje dalszej lektury (498)
- W następnym rozdziale (498)
O autorach (19)
O współautorach (19)
Wprowadzenie (21)
Część I. Stosowanie PHP (31)
Rozdział 1. Podstawowy kurs PHP (33)
- Zastosowanie PHP (34)
-
Tworzenie przykładowej aplikacji: "Części samochodowe Janka" (34)
- Formularz zamówienia (34)
- Przetwarzanie formularza (36)
-
Osadzanie PHP w HTML (36)
- Zastosowanie znaczników PHP (37)
- Instrukcje PHP (38)
- Odstępy (38)
- Komentarze (39)
-
Dodawanie zawartości dynamicznej (39)
- Wywoływanie funkcji (40)
- Używanie funkcji date() (40)
-
Dostęp do zmiennych formularza (41)
- Zmienne formularza (41)
- Łączenie łańcuchów znaków (43)
- Zmienne i łańcuchy znaków (43)
- Identyfikatory (44)
-
Typy zmiennych (44)
- Typy danych w PHP (45)
- Siła typu (45)
- Rzutowanie typu (46)
- Zmienne zmiennych (46)
- Deklarowanie i używanie stałych (46)
- Zasięg zmiennych (47)
-
Używanie operatorów (48)
- Operatory arytmetyczne (48)
- Operatory łańcuchowe (49)
- Operatory przypisania (49)
- Operatory porównań (52)
- Operatory logiczne (52)
- Operatory bitowe (53)
- Pozostałe operatory (53)
- Obliczanie sum w formularzu (56)
- Pierwszeństwo i kolejność (57)
-
Funkcje zarządzania zmiennymi (59)
- Sprawdzanie i ustawianie typów zmiennych (59)
- Sprawdzanie stanu zmiennej (60)
- Reinterpretacja zmiennych (61)
-
Podejmowanie decyzji za pomocą instrukcji warunkowych (61)
- Instrukcja if (61)
- Bloki kodu (62)
- Instrukcja else (62)
- Instrukcja elseif (63)
- Instrukcja switch (63)
- Porównanie różnych instrukcji warunkowych (65)
-
Powtarzanie działań przy użyciu iteracji (65)
- Pętle while (66)
- Pętle for i foreach (67)
- Pętle do..while (68)
- Wyłamywanie się ze struktury skryptu (69)
- Używanie alternatywnych składni struktur sterujących (69)
- Używanie struktury declare (70)
- W następnym rozdziale (70)
Rozdział 2. Przechowywanie i wyszukiwanie danych (71)
- Zapisywanie danych do późniejszego użycia (71)
- Przechowywanie i wyszukiwanie zamówień Janka (72)
- Przetwarzanie plików (72)
-
Otwieranie pliku (73)
- Tryby otwarcia pliku (73)
- Stosowanie funkcji fopen() do otwarcia pliku (73)
- Otwieranie pliku przez protokół FTP lub HTTP (75)
- Problemy z otwieraniem plików (76)
-
Zapisywanie danych w pliku (77)
- Parametry funkcji fwrite() (78)
- Formaty plików (79)
- Zamykanie pliku (79)
-
Odczyt z pliku (81)
- Otwieranie pliku w celu odczytu - fopen() (82)
- Wiedzieć, kiedy przestać - feof() (82)
- Odczytywanie pliku wiersz po wierszu - fgets(), fgetss() i fgetcsv() (83)
- Odczyt całego pliku - readfile(), fpassthru(), file() i file_get_contents() (83)
- Odczyt pojedynczego znaku - fgetc() (84)
- Odczytywanie zadanej długości - fread() (85)
-
Inne funkcje plikowe (85)
- Sprawdzanie istnienia pliku - file_exists() (85)
- Określanie wielkości pliku - filesize() (85)
- Kasowanie pliku - unlink() (86)
- Poruszanie się wewnątrz pliku - rewind(), fseek() i ftell() (86)
- Blokowanie pliku (87)
-
Lepszy sposób obróbki danych - bazy danych (88)
- Problemy związane ze stosowaniem plików jednorodnych (88)
- Jak RDBMS rozwiązują powyższe problemy? (89)
- Propozycje dalszych lektur (89)
- W następnym rozdziale (89)
Rozdział 3. Stosowanie tablic (91)
- Czym są tablice? (91)
-
Tablice indeksowane numerycznie (92)
- Inicjowanie tablic indeksowanych numerycznie (92)
- Dostęp do zawartości tablicy (93)
- Dostęp do tablic przy zastosowaniu pętli (94)
-
Tablice z innymi indeksami (94)
- Inicjowanie tablicy (95)
- Dostęp do elementów tablicy (95)
- Stosowanie pętli (95)
- Operatory tablicowe (96)
- Tablice wielowymiarowe (97)
-
Sortowanie tablic (100)
- Stosowanie funkcji sort() (100)
- Stosowanie funkcji asort() i ksort() do porządkowania tablic (101)
- Sortowanie odwrotne (102)
-
Sortowanie tablic wielowymiarowych (102)
- Zastosowanie funkcji array_multisort() (102)
- Typy sortowań definiowane przez użytkownika (103)
- Odwrotne sortowanie zdefiniowane przez użytkownika (104)
-
Zmiany kolejności elementów w tablicach (105)
- Stosowanie funkcji shuffle() (105)
- Odwracanie kolejności elementów w tablicy (106)
- Wczytywanie tablic z plików (107)
-
Wykonywanie innych działań na tablicach (110)
- Poruszanie się wewnątrz tablicy - funkcje each(), current(), reset(), end(), next(), pos() i prev() (110)
- Dołączanie dowolnej funkcji do każdego elementu tablicy - funkcja array_walk() (111)
- Liczenie elementów tablicy: count(), sizeof() i array_count_values() (112)
- Konwersja tablic na zmienne skalarne - funkcja extract() (112)
- Propozycje dalszych lektur (114)
- W następnym rozdziale (114)
Rozdział 4. Manipulowanie łańcuchami znaków i wyrażenia regularne (115)
- Przykładowa aplikacja - Inteligentny Formularz Pocztowy (115)
-
Formatowanie łańcuchów znaków (117)
- Przycinanie łańcuchów - funkcje chop(), ltrim() i trim() (118)
- Formatowanie wyjściowych łańcuchów znaków (118)
-
Łączenie i rozdzielanie łańcuchów znaków za pomocą funkcji łańcuchowych (125)
- Stosowanie funkcji explode(), implode() i join() (125)
- Stosowanie funkcji strtok() (126)
- Stosowanie funkcji substr() (127)
-
Porównywanie łańcuchów znaków (127)
- Porządkowanie łańcuchów znaków - funkcje strcmp(), strcasecmp() i strnatcmp() (128)
- Sprawdzanie długości łańcucha znaków za pomocą funkcji strlen() (128)
-
Dopasowywanie i zamiana łańcuchów znaków za pomocą funkcji łańcuchowych (129)
- Znajdowanie fragmentów w łańcuchach znaków - funkcje strstr(), strchr(), strrchr() i stristr() (129)
- Odnajdywanie pozycji fragmentu łańcucha - funkcje strpos() i strrpos() (130)
- Zamiana fragmentów łańcucha znaków - funkcje str_replace() i substr_replace() (131)
-
Wprowadzenie do wyrażeń regularnych (132)
- Podstawy (132)
- Ograniczniki (132)
- Zbiory i klasy znaków (133)
- Powtarzalność (134)
- Podwyrażenia (135)
- Podwyrażenia policzalne (135)
- Kotwiczenie na początku lub na końcu łańcucha znaków (135)
- Rozgałęzianie (135)
- Dopasowywanie specjalnych znaków literowych (136)
- Podsumowanie metaznaków (136)
- Sekwencje specjalne (137)
- Odwołania wsteczne (138)
- Asercje (138)
- Wykorzystanie wszystkich zdobytych informacji - inteligentny formularz (139)
- Odnajdywanie fragmentów łańcuchów za pomocą wyrażeń regularnych (140)
- Zamiana fragmentów łańcuchów za pomocą wyrażeń regularnych (141)
- Rozdzielanie łańcuchów za pomocą wyrażeń regularnych (141)
- Propozycje dalszych lektur (142)
- W następnym rozdziale (142)
Rozdział 5. Ponowne wykorzystanie kodu i tworzenie funkcji (143)
-
Zalety ponownego stosowania kodu (143)
- Koszt (144)
- Niezawodność (144)
- Spójność (144)
-
Stosowanie funkcji require() i include() (144)
- Stosowanie funkcji require() do dołączania kodu (145)
-
Stosowanie require() w szablonach stron WWW (146)
- Stosowanie opcji auto_prepend_file i auto_append_file (150)
-
Stosowanie funkcji w PHP (151)
- Wywoływanie funkcji (151)
- Wywołanie niezdefiniowanej funkcji (153)
- Wielkość liter a nazwy funkcji (154)
- Definiowanie własnych funkcji (154)
-
Podstawowa struktura funkcji (154)
- Nadawanie nazwy funkcji (155)
- Parametry (156)
- Zasięg (158)
- Przekazanie przez referencję czy przekazanie przez wartość? (160)
-
Stosowanie słowa kluczowego return (161)
- Zwracanie wartości przez funkcje (162)
-
Implementacja rekurencji (163)
- Implementacja funkcji anonimowych (lub domknięć) (165)
- Propozycje dalszych lektur (166)
- W następnym rozdziale (166)
Rozdział 6. Obiektowy PHP (167)
-
Koncepcje programowania obiektowego (167)
- Klasy i obiekty (168)
- Polimorfizm (169)
- Dziedziczenie (169)
-
Tworzenie klas, atrybutów i operacji w PHP (170)
- Struktura klasy (170)
- Konstruktory (170)
- Destruktory (171)
- Tworzenie egzemplarzy (171)
- Stosowanie atrybutów klasy (172)
- Wywoływanie operacji klas (172)
- Kontrola dostępu przy użyciu modyfikatorów private i public (173)
- Pisanie funkcji dostępowych (174)
-
Implementacja dziedziczenia w PHP (175)
- Kontrolowanie widoczności w trakcie dziedziczenia przy użyciu private i protected (176)
- Przesłanianie (177)
- Zapobieganie dziedziczeniu i przesłanianiu przy użyciu słowa kluczowego final (178)
- Wielokrotne dziedziczenie (179)
- Implementowanie interfejsów (180)
- Cechy (180)
- Projektowanie klas (182)
- Tworzenie kodu dla własnej klasy (183)
-
Zaawansowane mechanizmy obiektowe w PHP (189)
- Używanie stałych klasowych (189)
- Implementowanie metod statycznych (190)
- Sprawdzanie typu klasy i wskazywanie typu (190)
- Późne wiązania statyczne (191)
- Klonowanie obiektów (191)
- Używanie klas abstrakcyjnych (192)
- Przeciążanie metod przy użyciu __call() (192)
- Używanie metody __autoload() (193)
- Implementowanie iteratorów i iteracji (194)
- Generatory (195)
- Przekształcanie klas w łańcuchy znaków (197)
- Używanie API Reflection (197)
- Przestrzenie nazw (198)
- Stosowanie podprzestrzeni nazw (200)
- Prezentacja globalnej przestrzeni nazw (200)
- Importowanie przestrzeni nazw oraz określanie ich nazw zastępczych (200)
- W następnym rozdziale (201)
Rozdział 7. Obsługa błędów i wyjątków (203)
- Koncepcja obsługi wyjątków (203)
- Klasa Exception (205)
- Wyjątki definiowane przez użytkownika (206)
- Wyjątki w Częściach samochodowych Janka (207)
- Wyjątki i inne mechanizmy obsługi błędów w PHP (210)
- Propozycje dalszych lektur (211)
- W następnym rozdziale (211)
Część II. Stosowanie MYSQL (213)
Rozdział 8. Projektowanie internetowej bazy danych (215)
-
Koncepcje relacyjnych baz danych (216)
- Tabele (216)
- Kolumny (216)
- Wiersze (216)
- Wartości (217)
- Klucze (217)
- Schematy (218)
- Relacje (218)
-
Jak zaprojektować internetową bazę danych? (219)
- Określ obiekty świata realnego, których model chcesz wykonać (219)
- Unikaj przechowywania redundantnych danych (220)
- Zapisuj atomowe wartości kolumn (221)
- Dobierz właściwe klucze (222)
- Pomyśl o zapytaniach, które zadasz bazie (222)
- Unikaj tworzenia tabel z wieloma pustymi polami (222)
- Typy tabel - podsumowanie (223)
- Architektura internetowej bazy danych (224)
- Propozycje dalszych lektur (225)
- W następnym rozdziale (225)
Rozdział 9. Tworzenie internetowej bazy danych (227)
- Użytkowanie monitora MySQL (228)
- Logowanie się do serwera MySQL (229)
- Tworzenie baz i rejestrowanie użytkowników (230)
- Definiowanie użytkowników i przywilejów (230)
-
Wprowadzenie do systemu przywilejów MySQL (231)
- Zasada najmniejszego przywileju (231)
- Rejestrowanie użytkowników: polecenia CREATE USER oraz GRANT (231)
- Typy i poziomy przywilejów (233)
- Polecenie REVOKE (236)
- Przykłady użycia poleceń GRANT i REVOKE (236)
- Rejestrowanie użytkownika łączącego się z internetu (237)
- Używanie odpowiedniej bazy danych (238)
-
Tworzenie tabel bazy danych (238)
- Znaczenie dodatkowych atrybutów kolumn (240)
- Typy kolumn (241)
- Rzut oka na bazę danych - polecenia SHOW i DESCRIBE (243)
- Tworzenie indeksów (243)
- Identyfikatory MySQL (244)
-
Wybór typów danych w kolumnach (246)
- Typy liczbowe (246)
- Propozycje dalszych lektur (251)
- W następnym rozdziale (251)
Rozdział 10. Praca z bazą danych MySQL (253)
- Czym jest SQL? (253)
- Zapisywanie danych do bazy (254)
-
Wyszukiwanie danych w bazie (256)
- Wyszukiwanie danych spełniających określone kryteria (257)
- Wyszukiwanie danych w wielu tabelach (259)
- Szeregowanie danych w określonym porządku (264)
- Grupowanie i agregowanie danych (264)
- Wskazanie wierszy, które mają być wyświetlone (266)
- Używanie podzapytań (267)
- Dokonywanie zmian rekordów w bazie danych (269)
- Zmiana struktury istniejących tabel (269)
- Usuwanie rekordów z bazy danych (271)
- Usuwanie tabel (272)
- Usuwanie całych baz danych (272)
- Propozycje dalszych lektur (272)
- W następnym rozdziale (272)
Rozdział 11. Łączenie się z bazą MySQL za pomocą PHP (273)
- Jak działa internetowa baza danych? (273)
-
Wykonywanie zapytań do bazy danych z poziomu strony WWW (276)
- Sprawdzenie poprawności wpisanych danych (277)
- Ustanawianie połączenia z bazą danych (278)
- Wybór używanej bazy danych (279)
- Wysyłanie zapytań do bazy danych (279)
- Stosowanie poleceń przygotowanych (280)
- Odczytywanie rezultatów zapytań (281)
- Zamykanie połączenia z bazą danych (282)
- Wstawianie nowych danych do bazy (283)
-
Używanie innych interfejsów bazodanowych PHP (286)
- Stosowanie ogólnego interfejsu dostępu do baz danych: PDO (286)
- Propozycje dalszych lektur (289)
- W następnym rozdziale (289)
Rozdział 12. Administrowanie MySQL dla zaawansowanych (291)
-
Szczegóły systemu przywilejów (291)
- Tabela user (293)
- Tabela db (295)
- Tabele tables_priv, columns_priv i procs_priv (296)
- Kontrola dostępu: w jaki sposób MySQL używa tabel przywilejów (297)
- Zmiana przywilejów: kiedy zmiany zostaną uwzględnione? (298)
-
Ochrona bazy danych (298)
- MySQL z perspektywy systemu operacyjnego (298)
- Hasła (299)
- Przywileje użytkowników (299)
- MySQL i internet (300)
-
Uzyskiwanie szczegółowych informacji o bazie danych (301)
- Uzyskiwanie informacji poleceniem SHOW (301)
- Uzyskiwanie informacji o kolumnach za pomocą polecenia DESCRIBE (303)
- Jak wykonywane są zapytania: polecenie EXPLAIN (303)
-
Optymalizowanie bazy danych (308)
- Optymalizacja projektu bazy danych (308)
- Przywileje (308)
- Optymalizacja tabel (308)
- Stosowanie indeksów (308)
- Używanie wartości domyślnych (309)
- Więcej wskazówek (309)
- Tworzenie kopii zapasowej bazy danych MySQL (309)
- Przywracanie bazy danych MySQL (310)
-
Implementowanie replikacji (310)
- Konfigurowanie serwera nadrzędnego (311)
- Transfer danych początkowych (311)
- Konfigurowanie odbiorcy lub odbiorców (312)
- Propozycje dalszych lektur (312)
- W następnym rozdziale (312)
Rozdział 13. Zaawansowane programowanie w MySQL (313)
- Instrukcja LOAD DATA INFILE (313)
- Mechanizmy składowania danych (314)
-
Transakcje (315)
- Definicje dotyczące transakcji (315)
- Użycie transakcji w InnoDB (316)
- Klucze obce (317)
-
Procedury składowane (318)
- Prosty przykład (318)
- Zmienne lokalne (321)
- Kursory i struktury sterujące (321)
- Wyzwalacze (324)
- Propozycje dalszych lektur (326)
- W następnym rozdziale (326)
Część III. E-commerce i bezpieczeństwo (327)
Rozdział 14. Zagrożenia bezpieczeństwa aplikacji internetowych (329)
-
Identyfikacja zagrożeń (329)
- Dostęp do wrażliwych danych (329)
- Modyfikacje danych (332)
- Utrata lub zniszczenie danych (332)
- Blokada usługi (333)
- Wstrzykiwanie złośliwego kodu (335)
- Złamanie zabezpieczeń dostępu do serwera (336)
- Zaprzeczenie korzystania z usługi (336)
-
Identyfikacja użytkowników (337)
- Napastnicy i crackerzy (337)
- Nieświadomi użytkownicy zainfekowanych komputerów (338)
- Rozczarowani pracownicy (338)
- Złodzieje sprzętu komputerowego (338)
- My sami (338)
- W następnym rozdziale (339)
Rozdział 15. Tworzenie bezpiecznych aplikacji internetowych (341)
-
Strategie zapewniania bezpieczeństwa (341)
- Planowanie z wyprzedzeniem (342)
- Równowaga między bezpieczeństwem i użytecznością (342)
- Monitorowanie bezpieczeństwa (343)
- Ogólne podejście do bezpieczeństwa (343)
-
Zabezpieczanie kodu źródłowego (343)
- Filtrowanie danych pochodzących od użytkowników (343)
- Unieważnianie danych wynikowych (347)
- Organizacja kodu źródłowego (349)
- Zawartość kodu źródłowego (350)
- Zagadnienia dotyczące systemu plików (351)
- Stabilność kodu i błędy (352)
- Wykonywanie poleceń (352)
-
Zabezpieczanie serwera WWW oraz PHP (354)
- Regularne uaktualnianie oprogramowania (354)
- Analiza ustawień w pliku php.ini (355)
- Konfiguracja serwera WWW (355)
- Aplikacje internetowe działające na współużytkowanych serwerach hostingowych (356)
-
Bezpieczeństwo serwera bazy danych (357)
- Użytkownicy i system uprawnień (357)
- Wysyłanie danych do serwera (358)
- Łączenie się z serwerem (359)
- Praca serwera (359)
-
Zabezpieczanie sieci (359)
- Zapory sieciowe (360)
- Wykorzystanie strefy zdemilitaryzowanej (360)
- Przygotowanie na ataki DoS i DDoS (361)
-
Bezpieczeństwo komputerów i systemów operacyjnych (361)
- Uaktualnianie systemu operacyjnego (361)
- Udostępnianie tylko niezbędnych usług (362)
- Fizyczne zabezpieczenie serwera (362)
- Planowanie działań na wypadek awarii (362)
- W następnym rozdziale (364)
Rozdział 16. Implementacja metod uwierzytelniania przy użyciu PHP (365)
- Identyfikacja użytkowników (365)
-
Implementacja kontroli dostępu (366)
- Przechowywanie haseł dostępu (368)
- Zabezpieczanie haseł (369)
- Zabezpieczanie więcej niż jednej strony (370)
- Podstawowa metoda uwierzytelniania (371)
- Wykorzystanie podstawowej metody uwierzytelniania w PHP (371)
- Wykorzystanie podstawowej metody uwierzytelniania na serwerze Apache przy użyciu plików .htaccess (373)
- Implementacja własnej metody uwierzytelniania (376)
- Propozycje dalszych lektur (376)
- W następnym rozdziale (376)
Część IV. Zaawansowane techniki PHP (377)
Rozdział 17. Interakcja z systemem plików i serwerem (379)
-
Wprowadzenie do wysyłania plików (379)
- Kod HTML służący do wysyłania plików (380)
- Tworzenie kodu PHP obsługującego plik (381)
- Śledzenie postępów przesyłania plików (385)
- Najczęściej spotykane problemy (387)
-
Stosowanie funkcji katalogowych (388)
- Odczyt z katalogów (388)
- Otrzymywanie informacji na temat aktualnego katalogu (391)
- Tworzenie i usuwanie katalogów (391)
-
Interakcja z systemem plików (392)
- Pobieranie informacji o pliku (392)
- Zmiana właściwości pliku (394)
- Tworzenie, usuwanie i przenoszenie plików (395)
- Stosowanie funkcji uruchamiających programy (395)
- Interakcja ze środowiskiem: funkcje getenv() i putenv() (398)
- Propozycje dalszych lektur (398)
- W następnym rozdziale (398)
Rozdział 18. Stosowanie funkcji sieci i protokołu (399)
- Przegląd protokołów (399)
- Wysyłanie i odczytywanie poczty elektronicznej (400)
- Korzystanie z danych z innych witryn WWW (400)
- Stosowanie funkcji połączeń sieciowych (403)
-
Tworzenie kopii bezpieczeństwa lub kopii lustrzanej pliku (407)
- Stosowanie FTP w celu utworzenia kopii bezpieczeństwa lub kopii lustrzanej pliku (407)
- Wysyłanie plików (413)
- Unikanie przekroczenia dopuszczalnego czasu (413)
- Stosowanie innych funkcji FTP (414)
- Propozycje dalszych lektur (414)
- W następnym rozdziale (414)
Rozdział 19. Zarządzanie datą i czasem (415)
-
Uzyskiwanie informacji o dacie i czasie w PHP (415)
- Strefy czasowe (415)
- Stosowanie funkcji date() (416)
- Obsługa znaczników czasu Uniksa (417)
- Stosowanie funkcji getdate() (419)
- Sprawdzanie poprawności dat przy użyciu funkcji checkdate() (420)
- Formatowanie znaczników czasu (420)
- Konwersja pomiędzy formatami daty PHP i MySQL (422)
- Obliczanie dat w PHP (424)
- Obliczanie dat w MySQL (425)
- Stosowanie mikrosekund (426)
- Stosowanie funkcji kalendarzowych (426)
- Propozycje dalszych lektur (427)
- W następnym rozdziale (427)
Rozdział 20. Umiędzynarodawianie i lokalizowanie (429)
- Lokalizacja to nie tylko tłumaczenie (429)
-
Zbiory znaków (430)
- Zbiory znaków i ich związki z bezpieczeństwem (431)
- Stosowanie wielobajtowych funkcji łańcuchowych w PHP (432)
- Tworzenie struktury strony przystosowanej do lokalizacji (432)
-
Zastosowanie funkcji gettext() w umiędzynarodowionej aplikacji (435)
- Konfiguracja systemu w celu wykorzystania funkcji gettext() (436)
- Tworzenie plików z tłumaczeniami (437)
- Implementacja zlokalizowanych treści w PHP z użyciem funkcji gettext() (438)
- Propozycje dalszej lektury (439)
- W następnym rozdziale (440)
Rozdział 21. Generowanie obrazków (441)
- Konfigurowanie obsługi obrazków w PHP (441)
-
Formaty obrazków (442)
- JPEG (442)
- PNG (442)
- GIF (443)
-
Tworzenie obrazków (443)
- Tworzenie kadru obrazka (444)
- Rysowanie lub umieszczanie tekstu w obrazku (444)
- Wyświetlanie ostatecznej grafiki (446)
- Końcowe czynności porządkujące (447)
- Stosowanie automatycznie generowanych obrazków na innych stronach (447)
-
Stosowanie tekstu i czcionek do tworzenia obrazków (448)
- Konfiguracja podstawowego kadru (451)
- Dopasowanie tekstu do przycisku (452)
- Nadawanie tekstowi odpowiedniej pozycji (454)
- Wpisywanie tekstu do przycisku (455)
- Etap końcowy (455)
- Rysowanie figur i wykresów danych (455)
- Inne funkcje obrazków (462)
- W następnym rozdziale (462)
Rozdział 22. Stosowanie kontroli sesji w PHP (463)
- Czym jest kontrola sesji? (463)
-
Podstawowa zasada działania sesji (463)
- Czym jest cookie? (464)
- Konfiguracja cookies w PHP (464)
- Stosowanie cookies w sesji (465)
- Przechowywanie identyfikatora sesji (465)
-
Implementacja prostych sesji (466)
- Rozpoczynanie sesji (466)
- Zgłaszanie zmiennych sesyjnych (466)
- Stosowanie zmiennych sesyjnych (467)
- Usuwanie zmiennych i niszczenie sesji (467)
- Przykład prostej sesji (467)
- Konfiguracja kontroli sesji (469)
- Implementacja uwierzytelniania w kontroli sesji (470)
- W następnym rozdziale (476)
Rozdział 23. Integracja JavaScriptu i PHP (477)
- Przedstawienie technologii AJAX (477)
- Krótka prezentacja jQuery (478)
-
Stosowanie jQuery w aplikacjach internetowych (478)
- Podstawowe pojęcia i techniki związane ze stosowaniem jQuery (479)
- Stosowanie selektorów jQuery (479)
-
Stosowanie jQuery, technologii AJAX i skryptów PHP (487)
- Ajaksowe pogawędki - skrypt serwera (487)
- Metody jQuery służące do korzystania z technologii AJAX (490)
- Kliencka część aplikacji do prowadzenia pogawędek (493)
- Propozycje dalszej lektury (498)
- W następnym rozdziale (498)
Rozdział 24. Inne przydatne własności (499)
- Przetwarzanie łańcuchów znaków - funkcja eval() (499)
- Zakończenie wykonania - die i exit (500)
- Serializacja zmiennych i obiektów (500)
-
Pobieranie informacji na temat środowiska PHP (501)
- Uzyskiwanie informacji na temat załadowanych rozszerzeń (502)
- Identyfikacja właściciela skryptu (502)
- Uzyskiwanie informacji na temat daty modyfikacji skryptu (502)
- Czasowa zmiana środowiska wykonawczego (503)
- Podświetlanie źródeł (504)
- Używanie PHP w wierszu poleceń (505)
- W następnej części (506)
Część V. Tworzenie praktycznych projektów PHP I MYSQL (507)
Rozdział 25. Stosowanie PHP i MySQL w dużych projektach (509)
- Zastosowanie inżynierii oprogramowania w tworzeniu aplikacji WWW (510)
- Planowanie i prowadzenie projektu aplikacji WWW (510)
- Ponowne stosowanie kodu (511)
-
Tworzenie kodu łatwego w utrzymaniu (512)
- Standardy kodowania (512)
- Dzielenie kodu (515)
- Stosowanie standardowej struktury katalogów (516)
- Dokumentacja i dzielenie wewnętrznych funkcji (516)
- Implementacja kontroli wersji (516)
- Wybór środowiska programistycznego (517)
- Dokumentacja projektów (517)
- Prototypowanie (518)
- Oddzielanie logiki i zawartości (519)
-
Optymalizacja kodu (519)
- Stosowanie prostych optymalizacji (520)
- Testowanie (520)
- Propozycje dalszych lektur (521)
- W następnym rozdziale (521)
Rozdział 26. Usuwanie i rejestracja błędów (523)
-
Błędy programistyczne (523)
- Błędy składni (523)
- Błędy wykonania (524)
- Błędy logiczne (529)
- Pomoc w usuwaniu błędów w zmiennych (530)
- Poziomy zgłaszania błędów (532)
- Zmiana ustawień zgłaszania błędów (534)
- Wyzwalanie własnych błędów (535)
- Eleganckie rejestrowanie błędów (536)
- Rejestrowanie błędów w pliku dziennika (538)
- W następnym rozdziale (538)
Rozdział 27. Tworzenie uwierzytelniania użytkowników i personalizacji (539)
-
Składniki rozwiązania (539)
- Identyfikacja użytkownika i personalizacja (540)
- Przechowywanie zakładek (540)
- Rekomendowanie zakładek (541)
- Przegląd rozwiązania (541)
- Implementacja bazy danych (543)
- Implementacja podstawowej witryny (544)
-
Implementacja uwierzytelniania użytkowników (546)
- Rejestracja użytkowników (546)
- Logowanie (551)
- Wylogowanie (554)
- Zmiana hasła (555)
- Ustawianie zapomnianych haseł (557)
-
Implementacja przechowywania i odczytywania zakładek (561)
- Dodawanie zakładek (561)
- Wyświetlanie zakładek (563)
- Usuwanie zakładek (564)
- Implementacja rekomendacji (566)
- Rozwijanie projektu i możliwe rozszerzenia (568)
Rozdział 28. Tworzenie internetowego klienta poczty elektronicznej z użyciem Laravela (571)
-
Prezentacja frameworka Laravel 5 (571)
- Tworzenie nowego projektu Laravel (571)
- Struktura aplikacji Laravel (572)
- Cykl obsługi żądań i wzorzec MVC Laravela (574)
- Klasy modelu, widok i kontroler frameworka Laravel (575)
Rozdział 29. Tworzenie internetowego klienta poczty elektronicznej z użyciem Laravela - część 2. (591)
-
Tworzenie prostego klienta IMAP przy użyciu Laravela (591)
- Funkcje IMAP udostępniane przez PHP (591)
- Opakowywanie funkcji IMAP na potrzeby aplikacji Laravel (599)
-
Łączenie wszystkich elementów w celu implementacji internetowego klienta poczty elektronicznej (615)
- Implementacja klasy ImapServiceProvider (616)
- Strona uwierzytelniania aplikacji klienckiej (617)
- Implementacja głównego widoku aplikacji (621)
- Implementacja usuwania i wysyłania wiadomości (629)
- Wnioski (634)
Rozdział 30. Integracja z mediami społecznościowymi - udostępnianie i uwierzytelnianie (635)
-
OAuth - internetowa usługa uwierzytelniająca (635)
- Przydziały typu kod autoryzacji (637)
- Przydziały niejawne (638)
- Implementacja internetowego klienta Instagrama (639)
- Oznaczanie zdjęć jako lubianych (646)
- Wniosek (647)
Rozdział 31. Tworzenie koszyka na zakupy (649)
-
Składniki rozwiązania (649)
- Tworzenie katalogu online (650)
- Śledzenie zakupów użytkownika podczas przeglądania (650)
- Implementacja systemu płatności (650)
- Interfejs administratora (651)
- Przegląd rozwiązania (651)
- Implementacja bazy danych (654)
-
Implementacja katalogu online (656)
- Przedstawianie kategorii (658)
- Wyświetlanie książek danej kategorii (660)
- Przedstawianie szczegółowych danych książki (661)
-
Implementacja koszyka na zakupy (662)
- Stosowanie skryptu pokaz_kosz.php (663)
- Podgląd koszyka (665)
- Dodawanie produktów do koszyka (667)
- Zapisywanie uaktualnionego koszyka (669)
- Wyświetlanie podsumowania w pasku nagłówka (669)
- Pobyt w kasie (670)
- Implementacja płatności (675)
- Implementacja interfejsu administratora (676)
- Rozwijanie projektu (682)
Dodatki (685)
Dodatek A. Instalacja Apache, PHP i MySQL (687)
-
Instalacja Apache, PHP i MySQL w systemie UNIX (688)
- Instalacja przy użyciu binariów (688)
- Instalacja przy użyciu kodów źródłowych (689)
- Podstawowe zmiany w konfiguracji serwera Apache (695)
- Czy obsługa PHP działa poprawnie? (696)
- Czy SSL działa poprawnie? (697)
- Instalacja Apache, PHP i MySQL w systemie Windows (698)
- Instalowanie PEAR (700)
- Instalowanie PHP z innymi serwerami (700)
Skorowidz (701)
Informatyka » Bazy danych
Informatyka » PHP - Programowanie