okladka
Skrypty PHP są osadzone w dokumentach HTML, dzięki czemu powstają aktywne strony WWW. W tej książce znajdziesz opis metod i funkcji potrzebnych, by nauczyć się budowania dynamicznych witryn WWW. Peter Moulding, od ponad 25 lat zajmujący się programowaniem, pomoże Ci w zdobyciu wiedzy niezbędnej do zastosowania PHP w środowisku Unix lub Windows. Dowiesz się wszystkiego, co jest potrzebne do tworzenia stabilnych i efektywnie działających witryn WWW. W książce zostały opisane wszystkie funkcje PHP, włącznie z funkcjami obsługi baz danych. Dzięki tej książce będziesz mógł dopisać do listy posiadanych umiejętności dogłębną znajomość PHP.
  • Programowanie witryn WWW za pomocą PHP
  • Tworzenie stabilnego, wydajnego kodu, działającego w systemach Windows i Unix
  • Wysyłanie i odbieranie poczty za pomocą stron WWW
  • Korzystanie z baz danych MySQL oraz PostgreSQL
  • Pobieranie informacji z dowolnej bazy lub serwera
  • Stosowanie cookies, sesji, zabezpieczeń oraz profilów użytkowników
  • Automatyzowanie administrowania systemem, dostarczanie danych oraz wykonywanie innych codziennych zadań
  • Zastosowanie formularzy, tablic, klas i obiektów
  • Konfiguracja i wykorzystywanie ważnych technologii sieciowych: XML, LDAP, IMAP, MIME, WDDX, Z39.50, YAZ, XSLT oraz XSL
  • Generowanie obrazków JPEG i PNG oraz plików Flash

Podziękowania (17)
O Autorze (18)
Wprowadzenie (19)
Rozdział 1. Wprowadzenie do PHP (21)
  • Szczegółowe omówienie (21)
    • Dzieje programowania (22)
      • Nieco historii (22)
      • Diagnostyka (24)
    • Zalety PHP (24)
      • Interpretacja a kompilacja (25)
      • Części a programowanie (25)
      • Kontrolowanie wyjścia (26)
    • PHP4 (26)
      • Nowe funkcje (26)
      • Nowa nazwa (27)
      • Szybkość (27)
      • Debugger PHP (28)
      • COM dla Windows (28)
      • Funkcje wyrażeń regularnych (28)
    • PHP i Apache (29)
      • Apache na dowolnej platformie (29)
      • Moduł lub CGI (30)
    • Podstawy PHP (30)
      • Składnia (31)
      • If, then, else (32)
      • Korzystanie z odpowiednich typów danych (33)
      • Ogranicz wejście, rozszerz wyjście (34)
  • Natychmiastowe rozwiązania (34)
    • Konfiguracja serwera Apache (34)
    • Specyficzne funkcje serwera Apache (35)
      • apache_lookup_uri() (35)
      • apache_note() (35)
      • ascii2ebcdic() oraz abcdic2ascii() (36)
      • getallheaders() (36)
    • Konfiguracja PHP (36)
      • dl() (37)
      • extension_loaded() (37)
    • Diagnostyka (37)
      • assert() (37)
      • assert_options() (38)
      • die() (38)
    • Błędy (39)
    • Dzienniki (39)
    • Sterowanie wyjściem (40)
    • Bezpieczeństwo (40)
    • Wyrażenia regularne (41)
      • ereg() (41)
      • ereg_replace() (41)
      • eregi() (42)
      • eregi_replace() (42)
      • split() (42)
      • spliti() (42)
Rozdział 2. Dane (43)
  • Szczegółowe omówienie (43)
    • Typy danych (43)
      • Zmienne (44)
      • Automatyczne tworzenie (44)
      • Stałe (45)
      • Zakres (45)
    • Praca z danymi (46)
      • Wyrażenia (46)
      • Operatory (47)
      • Sterowanie i struktura (55)
      • Funkcje (62)
      • Klasy i obiekty (62)
      • Dane dla baz danych (62)
      • Dane dla HTML (62)
    • Data i czas (62)
      • Data juliańska (63)
      • Czas (63)
      • Kalendarz (64)
    • Matematyka (66)
      • Matematyka liczb całkowitych (66)
      • Matematyka zmiennopozycyjna (67)
      • Matematyka o ustalonej precyzji (67)
  • Natychmiastowe rozwiązania (68)
    • Tworzenie danych (68)
      • Łańcuchy (68)
      • Dane całkowite i zmiennopozycyjne (69)
    • Sprawdzanie danych (70)
    • Konwertowanie danych (72)
    • Funkcje operujące na łańcuchach (73)
    • rand(), srand() oraz microtime() (79)
    • Obliczanie daty i czasu (80)
    • Święta wielkanocne (82)
Rozdział 3. Tablice (83)
  • Szczegółowe omówienie (83)
    • Proste tablice (84)
      • Najprostsza tablica świata (84)
      • Elementy tablic są liczone od zera (84)
      • Elementy tablic mogą mieć dowolne nazwy (85)
      • Funkcje tworzące tablice (86)
    • Potencjalne problemy (86)
    • Więcej wymiarów (87)
    • Wskaźnik tablicy (88)
    • Sortowanie tablic (89)
    • Odkładanie, zdejmowanie, uzupełnianie i łączenie (91)
      • Odkładanie i zdejmowanie (91)
      • Uzupełnianie (92)
      • Łączenie (92)
  • Natychmiastowe rozwiązania (93)
    • Tworzenie tablic na podstawie list (za pomocą funkcji array()) (93)
    • Tworzenie tablic z łańcuchów (za pomocą funkcji explode()) (93)
    • Tworzenie łańcuchów z tablic (za pomocą funkcji implode()) (94)
      • Proste SQL (94)
      • select (95)
      • where (95)
      • order by (95)
      • group by (95)
      • Budowanie kwerendy SQL (95)
    • Określanie zakresu elementów (za pomocą funkcji range()) (98)
    • Określanie zakresu kluczy (za pomocą funkcji range() i array_flip()) (99)
    • Usuwanie powtarzających się wartości (za pomocą funkcji array_flip()) (99)
    • Losowa zmiana kolejności elementów tablicy (za pomocą funkcji shuffle()) (100)
    • Losowy wybór banerów reklamowych (za pomocą funkcji array_rand()) (101)
    • Wczytywanie zawartości pliku do tablicy (za pomocą funkcji file()) (103)
    • Sortowanie tablicy według wartości elementów (za pomocą funkcji sort()) (104)
    • Sortowanie tablicy asocjacyjnej według wartości (za pomocą funkcji asort()) (104)
    • Sortowanie tablicy według wartości, w kolejności odwrotnej (za pomocą funkcji rsort()) (105)
    • Sortowanie tablicy asocjacyjnej według wartości, w kolejności odwrotnej (za pomocą funkcji arsort()) (106)
    • Sortowanie tablicy asocjacyjnej według klucza (za pomocą funkcji ksort()) (106)
    • Sortowanie tablicy w sposób naturalny według wartości (za pomocą funkcji natsort()) (107)
    • Sortowanie tablicy w zadany sposób (za pomocą funkcji usort()) (109)
    • Przetwarzanie tablic w odwrotnej kolejności (113)
    • Przetwarzanie tablic wielowymiarowych (114)
Rozdział 4. Karty kredytowe (117)
  • Szczegółowe omówienie (117)
    • Konto sprzedawcy (118)
      • Dzieci (119)
      • Nazwa sprzedawcy (119)
    • Bezpieczeństwo (120)
    • Serwer (120)
    • Haszowanie (120)
    • Szyfrowanie (122)
      • Instalowanie pakietu mcrypt (122)
      • Funkcje pakietu mcrypt (123)
    • Oprogramowanie do transakcji finansowych (130)
      • CyberCash (130)
      • Payflow (132)
  • Natychmiastowe rozwiązania (134)
    • Haszowanie danych (134)
      • mhash() (134)
      • mhash_get_hash_name() (136)
      • mhash_get_block_size() (136)
      • mhash_count() (137)
      • mhash_keygen_s2k() (137)
Rozdział 5. Bazy danych: MySQL i PostgreSQL (139)
  • Szczegółowe omówienie (139)
    • Historia (140)
      • MySQL (140)
      • PostgreSQL (140)
    • Niektóre różnice (141)
      • Daty (142)
      • Uwzględnianie wielkości liter (142)
      • Transakcje (142)
      • Procedury przechowywane (143)
      • Przełączniki (143)
      • Widoki (144)
    • Typy danych (144)
      • Bity (144)
      • Liczby całkowite (145)
      • Liczby zmiennopozycyjne (146)
      • Łańcuchy (146)
      • Bloby (148)
      • Daty i czas (148)
      • Specjalne typy danych PostgreSQL (149)
      • Wstawianie identyfikatorów (150)
    • Niezależność od platformy (151)
    • Zamiana surowych danych w bazę danych (151)
    • Bazy danych a tablice (152)
    • Indeksować czy nie indeksować (152)
    • Relacje (152)
    • ODBC (152)
  • Natychmiastowe rozwiązania (153)
    • Łączenie się z bazą danych (153)
    • Wyświetlanie baz danych (155)
    • Wyświetlanie tabel bazy danych (157)
    • Wyświetlanie pól tabeli (159)
    • Wyświetlanie danych z tabeli (163)
    • Wstawianie wiersza danych (167)
    • Tworzenie baz danych (170)
    • Tworzenie tabel (170)
    • Użycie baz danych dla utrzymania sesji (171)
    • Porządkowanie kodu (179)
Rozdział 6. Bazy danych: komercyjne i niecodzienne (183)
  • Szczegółowe omówienie (183)
    • SQL (183)
    • Indeksować czy nie indeksować (184)
    • Relacje (184)
    • Trwałe połączenia (184)
    • ODBC (185)
    • DB2 (187)
    • SAP DB (188)
    • Inne bazy danych (188)
      • Adabas (188)
      • Odczyt bazy danych filePro (189)
      • Dostęp do FrontBase (190)
      • Hyperwave (191)
      • Informix (192)
      • Ingres II (192)
      • InterBase (192)
      • Microsoft Access (193)
      • Microsoft SQL Server (194)
      • mSQL (194)
      • Oracle (195)
      • Ovirimos SQL Server (196)
      • SESAM/SQL-Server (196)
      • Solid (197)
      • Sybase (197)
    • Warstwy abstrakcji baz danych (197)
      • Funkcje DBA (198)
      • Funkcje DBM (199)
      • Funkcje DBX (200)
  • Natychmiastowe rozwiązania (201)
    • Dostęp do baz danych poprzez ODBC (201)
      • Wyniki (204)
      • Błędy (208)
      • Informacje o polach (208)
      • Inne funkcje (209)
      • Nowe funkcje (213)
    • Dostęp do baz danych za pomocą funkcji DBA (213)
    • Dostęp do baz danych za pomocą funkcji DBM (214)
    • Dostęp do baz danych za pomocą funkcji DBX (215)
    • Dostęp do bazy danych Ingres II (215)
    • Odczyt czasu: droga ku wydajności (217)
Rozdział 7. Środowisko działania skryptu (221)
  • Szczegółowe omówienie (221)
    • Apache (221)
    • Konfiguracja PHP (223)
      • Rozszerzenia (223)
      • Ustawienia w pliku php.ini (224)
      • Limit czasu (224)
      • Zmienne środowiskowe (225)
    • Bezpieczeństwo (225)
      • Autoryzacja HTTP (225)
      • CHMOD (226)
    • PHP w trybie wsadowym (226)
    • Harmonogram uruchamiania PHP (227)
    • COM (227)
    • Nazwy plików i katalogów (228)
      • Linux i Unix (229)
      • Windows NT (229)
      • Macintosh (229)
    • POSIX (229)
    • Pomoc we wzajemnym komunikowaniu się programów (231)
      • Wspólna pamięć (231)
      • Semafory (232)
    • Programy zewnętrzne (233)
    • Dodatkowe informacje (233)
    • Funkcje mnoGoSearch (234)
  • Natychmiastowe rozwiązania (235)
    • Porządkowanie starych plików (235)
    • Wykonywanie programu zewnętrznego (239)
    • Konwertowanie dokumentów Worda na RTF za pomocą COM (241)
    • Przykład autoryzacji HTTP (244)
    • Modyfikowanie kodu w celu dostosowania do środowiska (246)
      • Rejestrowanie błędów (246)
      • Przerwanie działania przez użytkownika (248)
      • Określanie czasu działania skryptu (248)
      • Wybór bazy danych (249)
      • Kod zależny od przeglądarki (250)
      • Sprawdzanie dostępności funkcji (251)
      • Sprawdzanie nagłówków HTTP przed wysłaniem (251)
      • Sprawdzanie PHP (251)
    • Sprawdzanie pamięci (252)
    • Wysyłanie niezwykłych formatów (252)
    • Zabezpieczanie obrazków (253)
Rozdział 8. Pliki (255)
  • Szczegółowe omówienie (255)
    • Katalogi (255)
      • Punkt widzenia serwera Apache (255)
      • Punkt widzenia PHP (256)
      • Zmiana katalogu (256)
    • Typy plików (256)
      • Wyświetlanie plików (257)
      • Tworzenie i modyfikowanie plików (257)
      • Kopiowanie plików (257)
      • Pliki tymczasowe (257)
    • Wysyłanie plików do serwera (258)
    • Bufor listy plików (258)
    • Uprawnienia (258)
  • Natychmiastowe rozwiązania (259)
    • Wyświetlanie zawartości katalogów (259)
      • Wspólny kod (259)
      • Zastosowanie funkcji sprawdzających typ pliku (259)
      • Zastosowanie funkcji filetype() (260)
      • Zastosowanie funkcji get_directory_file() (261)
      • Sformatowana lista plików (262)
      • Inne funkcje katalogów (263)
    • Tworzenie i usuwanie kartotek (265)
    • Wypisywanie atrybutów plików (266)
      • Wspólny kod (266)
      • Rozszerzona funkcja get_directory_file() (266)
      • Sformatowana lista plików (267)
      • Dodatkowe atrybuty (269)
    • Sprawdzanie ilości miejsca na dysku (269)
      • Wspólny kod (270)
      • Rozszerzenie funkcji get_directory_file() (270)
      • Wyszukiwanie wolnego miejsca na dysku (270)
      • Formatowanie listy plików z podaniem ilości zajętego miejsca (272)
      • Wypisywanie ilości miejsca zajętego przez katalogi (274)
      • Wypisywanie ilości miejsca zajętego przez najbardziej obszerne katalogi (275)
      • Wypisywanie miejsca zajmowanego przez największe pliki (276)
    • Wypisywanie atrybutów obrazków (277)
      • Gromadzenie informacji o obrazie (278)
      • Wyświetlanie informacji o obrazku (279)
    • Wyświetlanie dowolnych danych (280)
      • Wspólny kod (280)
      • Wyświetlanie pliku tekstowego (280)
      • Wyświetlanie pliku HTML (282)
      • Wyświetlanie dowolnego pliku (283)
    • Tworzenie pustych plików (284)
    • Wysyłanie plików do serwera (285)
    • Obliczanie kodów CRC dla plików (288)
Rozdział 9. Formularze (291)
  • Szczegółowe omówienie (291)
    • Alternatywna nawigacja (291)
    • HTML czy czyste PHP? (292)
    • Minimalny kod HTML (293)
    • Dzwonki i gwizdki (294)
      • Pytania formularza (296)
    • Kilka akcji (299)
    • JavaScript (300)
      • Usuwanie wymyślnych rozwijanych menu (300)
      • Sprawdzanie poprawności pól na serwerze (300)
    • Długie formularze (301)
      • Podział długich formularzy (301)
      • Przenoszenie informacji ze strony do strony (302)
      • Projektowanie dobrych długich formularzy (304)
    • Wysyłanie plików do serwera (306)
  • Natychmiastowe rozwiązania (308)
    • Tworzenie formularza (308)
    • Tworzenie formularza za pomocą funkcji (308)
    • Tworzenie długiej listy w formularzu (309)
    • Wyrównywanie kolumn (311)
    • Wybór jednej z kilku możliwości (314)
    • Wybór jednej z kilku możliwości za pomocą przycisków radiowych (317)
    • Wybór kilku z wielu możliwości (318)
    • Zachowywanie odpowiedzi i podświetlanie błędów (323)
Rozdział 10. Funkcje (325)
  • Szczegółowe omówienie (325)
    • Najkrótsza funkcja świata (326)
    • Zwracanie wartości (327)
    • Przekazywanie wartości do funkcji (329)
    • Parametry opcjonalne (330)
    • Zmienna ilość parametrów funkcji (332)
    • Zakres (333)
    • Zmienne statyczne (336)
    • Rekurencja (338)
    • Nazwy funkcji przechowywane w zmiennych (338)
    • Kolejność funkcji (339)
  • Natychmiastowe rozwiązania (340)
    • Tworzenie funkcji (340)
    • Deklarowanie zmiennej globalnej (341)
    • Deklarowanie zmiennej statycznej (342)
    • Przechowywanie nazwy funkcji w zmiennej (343)
    • Użycie domyślnych parametrów funkcji (344)
    • Sprawdzanie, czy funkcja istnieje (345)
    • Korzystanie z funkcji call_user_func() (346)
    • Korzystanie z funkcji create_function() (347)
    • Korzystanie z funkcji func_get_arg() oraz func_num_args() (348)
    • Korzystanie z funkcji func_get_args() (349)
    • Rejestrowanie funkcji końcowej (349)
Rozdział 11. Obrazki (351)
  • Szczegółowe omówienie (351)
    • GIF (351)
    • PNG (352)
    • JPEG (352)
    • PDF (353)
      • ClibPDF (354)
      • FDF (359)
      • PDFlib (361)
    • Flash i Shockwave (362)
      • Plik (362)
      • Klatka (363)
      • Kolor (363)
      • Obiekty (364)
      • Tekst (366)
      • Bitmapy i symbole (367)
      • Akcje (367)
      • Przyciski (368)
    • Bazy danych obrazków (370)
      • MySQL (370)
      • Inne bazy danych SQL (370)
      • Hyperwave (370)
    • Instalowanie modułu obrazków (371)
    • Wyświetlanie obrazków (371)
      • Zawsze używaj tekstu alternatywnego dla obrazka (372)
      • W znaczniku obrazka wykorzystuj informacje o jego rozmiarach (372)
      • Twórz miniatury obrazków (372)
    • Tworzenie obrazków (372)
    • Modyfikowanie obrazków (377)
      • Zmiana kolorów (377)
      • Zmiana rozmiaru i rozdzielczości (378)
    • Programy zewnętrzne (379)
    • Wybór odpowiedniego formatu (379)
  • Natychmiastowe rozwiązania (380)
    • Wyświetlanie obrazków (380)
      • Zbieranie informacji o obrazie (380)
      • Wyświetlanie informacji o obrazku (381)
    • Tworzenie tekstu w dokumencie PDF za pomocą biblioteki ClibPDF (386)
    • Tworzenie tekstu w dokumencie PDF za pomocą biblioteki PDFlib (388)
    • Tworzenie tekstu w obrazku GIF, JPEG lub PNG (388)
    • Tworzenie rysunków w obrazkach GIF, JPEG lub PNG (390)
Rozdział 12. Tworzenie witryn międzynarodowych (393)
  • Szczegółowe omówienie (393)
    • Wykrywanie języka i kraju (394)
      • Wykrywanie ustawień międzynarodowych (394)
      • Wykrywanie języka i kraju przez serwer Apache (395)
      • Obowiązkowy wybór za pomocą PHP (396)
    • Wymagania języka (397)
    • Specyfika aplikacji i specyfika witryny (398)
    • GNU recode (398)
    • GNU gettext (399)
    • Pisownia (400)
      • Dopasowywanie słów (401)
      • Aspell (402)
      • Pspell (403)
    • Znaki wielobajtowe (405)
  • Natychmiastowe rozwiązania (406)
    • Tworzenie informacji o kraju (406)
    • Przechowywanie informacji o kraju (409)
    • Pobieranie informacji o kraju (411)
    • Wykorzystanie rekordów sesji dla informacji o kraju (414)
    • Tłumaczenie komunikatu z innego języka za pomocą GNU gettext (415)
    • Tłumaczenie tekstu z innego języka za pomocą SQL (417)
    • Sprawdzanie typów znaków (420)
    • Dopasowywanie fraz i nazw miejsc za pomocą funkcji levenshtein() (422)
Rozdział 13. Internet (425)
  • Szczegółowe omówienie (425)
    • URL (426)
      • Schemat, czyli protokół (426)
      • Host (426)
      • Ścieżka (427)
      • Strona (427)
      • Fragment (427)
      • Kwerenda (428)
      • Znaki specjalne (428)
      • Łańcuchy tekstu kodowane jako base64 (428)
    • Przeglądanie innych serwerów (429)
    • Funkcje gniazd (430)
    • SNMP (433)
    • Curl (436)
    • FTP (436)
  • Natychmiastowe rozwiązania (437)
    • Kodowanie base64 (437)
    • Przeglądanie Internetu za pomocą PHP (438)
    • Sprawdzanie łączy (441)
    • Korzystanie z funkcji FTP (442)
    • Korzystanie z Curl (449)
      • Opcje biblioteki Curl (450)
Rozdział 14. LDAP (457)
  • Szczegółowe omówienie (457)
    • Instalacja (458)
    • Terminologia (458)
      • DN (459)
      • RDN (460)
      • Poziomy (460)
      • Pozycje (460)
      • Atrybuty (460)
      • Obiekty (461)
      • DIT (461)
      • Schemat (461)
      • LDIF (462)
    • Właściwości serwera (462)
      • Powoływanie się (462)
      • Replikacja (463)
      • Bezpieczeństwo (463)
    • Funkcje LDAP (463)
  • Natychmiastowe rozwiązania (467)
    • Instalowanie LDAP w Windows NT (467)
      • Rozszerzenie PHP (467)
      • Serwer OpenLDAP (467)
      • Testowanie serwera (468)
    • Łączenie się z LDAP (469)
    • Dodawanie kodów krajów (473)
      • Połączenie (473)
      • Pobieranie kodów krajów (473)
      • Formatowanie kodów krajów (474)
      • Dodawanie pierwszego kodu kraju (475)
      • Dodawanie kolejnych kodów krajów (476)
    • Dodawanie użytkownika (477)
      • Dodawanie poziomów pośrednich (477)
      • Dodawanie końcowego poziomu (478)
    • Obsługa błędów (478)
    • Wypisywanie wszystkich pozycji (481)
      • Wypisywanie wszystkich pozycji na pojedynczym poziomie (481)
      • Wypisywanie wszystkich pozycji na wszystkich poziomach (484)
      • Interpretowanie pozycji w listingu (486)
Rozdział 15. Poczta (489)
  • Szczegółowe omówienie (489)
    • IMAP (490)
      • Funkcje skrzynki pocztowej (490)
      • Funkcje wiadomości (492)
      • Funkcje subskrypcji (493)
      • Funkcje konwertujące łańcuchy (494)
      • Inne funkcje (499)
    • Nagłówki wiadomości (502)
      • Minimalne nagłówki (502)
      • Dodatkowe nagłówki (502)
    • MIME (503)
      • MIME-Version (503)
      • Content-Type (503)
      • Content-Transfer-Encoding (504)
      • Content-ID (504)
      • Content-Description (504)
      • Content-Disposition (504)
    • Tryby działania (505)
      • Tryb offline (505)
      • Tryb online (506)
      • Praca bez połączenia (506)
      • Poczta tymczasowa (506)
  • Natychmiastowe rozwiązania (507)
    • Instalowanie funkcji poczty PHP (507)
      • Windows NT (507)
      • Unix (507)
    • Wysyłanie wiadomości (508)
      • Wysyłanie pojedynczej wiadomości (508)
      • Wysyłanie nagłówka From (510)
      • Wysyłanie wielu nagłówków (511)
      • Wysyłanie pojedynczej wiadomości do wielu odbiorców (512)
    • Wysyłanie wiadomości z załącznikami (514)
      • Wybór danych testowych (515)
      • Gromadzenie informacji o pliku (515)
      • Budowanie nagłówków MIME (517)
      • Budowanie części wiadomości MIME (518)
      • Budowanie zwykłych nagłówków (519)
      • Wysyłanie wiadomości (520)
    • Weryfikowanie adresów email (520)
Rozdział 16. Sieci (525)
  • Szczegółowe omówienie (525)
    • Debugger (525)
    • DNS i rekordy MX (526)
    • Nazwy hosta (526)
    • Adresy IP (526)
      • ip2long() (527)
      • long2ip() (528)
    • Numery i nazwy protokołów (528)
      • Nazwy usług i numery portów (528)
      • getservbyname() (528)
      • getservbyport() (529)
    • Gniazda (529)
      • pfsockopen() (529)
      • socket_get_status() (529)
      • socket_set_blocking() (530)
      • socket_set_timeout() (531)
    • Dziennik systemowy (531)
      • define_syslog_variables() (531)
      • openlog() (531)
      • syslog() (532)
      • closelog() (532)
    • NFS (532)
    • NIS (533)
      • Mapa (533)
      • yp_get_default_domain() (533)
      • yp_master() (534)
      • yp_order() (534)
      • yp_match() (534)
      • yp_first() (534)
      • yp_next() (535)
    • WDDX (535)
      • Pakiet WDDX (536)
    • CORBA (536)
      • orbitobject() (537)
      • orbitenum() (537)
      • orbitstruct() (538)
      • satellite_caught_exception() (538)
      • satellite_exception_id() (538)
      • satellite_exception_value() (538)
    • Kompresja (538)
      • bzip2 (539)
      • gzip (541)
  • Natychmiastowe rozwiązania (541)
    • Sprawdzanie rekordów DNS (541)
    • Odczytywanie rekordów MX (543)
    • Uzyskiwanie nazwy hosta (544)
      • Uzyskiwanie nazwy hosta na podstawie adresu (544)
      • Uzyskiwanie adresu hosta na podstawie nazwy (545)
      • Uzyskiwanie listy adresów hosta na podstawie nazwy (546)
    • Wypisywanie numerów protokołów (547)
    • Serializowanie danych za pomocą WDDX (548)
      • wddx_serialize_value() (548)
      • wddx_deserialize() (549)
      • serialize() (549)
      • wddx_serialize_vars() (550)
      • wddx_deserialize() ze zmiennymi (550)
      • wddx_packet_start() (551)
      • wddx_add_vars() (551)
      • wddx_packet_end() (551)
    • Kompresowanie danych za pomocą biblioteki zlib (552)
    • Tworzenie prywatnego dziennika (554)
Rozdział 17. Obiekty (555)
  • Szczegółowe omówienie (555)
    • Klasy (555)
      • new (556)
      • Jak zmienna (556)
      • stdClass (557)
      • __ (557)
    • Właściwości (559)
      • var (559)
      • Konstruktor (560)
      • $this (560)
    • Metody (561)
      • Destruktor (562)
    • Rozszerzanie klas (563)
      • Dodawanie funkcji (564)
      • Konstruktory w klasach rozszerzonych (564)
      • Zastępowanie funkcji (565)
      • Usuwanie funkcji (566)
      • Wielokrotne rozszerzanie (566)
      • :: (567)
      • parent (567)
    • Dystrybucja i dokumentacja oprogramowania (567)
      • Złożone zależności pomiędzy danymi (568)
      • Wiele wyników (568)
  • Natychmiastowe rozwiązania (569)
    • Zapisywanie obiektów w sesji i użycie funkcji __sleep() (569)
    • Korzystanie z funkcji obiektów (573)
      • call_user_method() (574)
      • call_user_method_array() (574)
      • class_exists() (575)
      • get_class() (575)
      • get_class_methods() (575)
      • get_class_vars() (576)
      • get_declared_classes() (576)
      • get_object_vars() (577)
      • get_parent_class() (577)
      • is_subclass_of() (578)
      • method_exists() (578)
    • Dostosowywanie strony WWW za pomocą obiektu (578)
    • Odczytywanie wiadomości grup dyskusyjnych (582)
Rozdział 18. Wyszukiwanie (589)
  • Szczegółowe omówienie (589)
    • Przeszukiwanie witryn wyszukiwania (589)
      • LDAP (590)
    • Z39.50 (590)
    • YAZ (591)
      • Instalowanie YAZ (591)
      • Źródła danych (591)
      • Testowanie (592)
      • RPN (593)
    • Wyszukiwanie za pomocą YAZ (593)
      • Nieobsługiwane wyszukiwanie (593)
      • Funkcje YAZ (593)
    • Wyszukiwanie oparte na bazie danych (598)
      • Przechowuj oryginalne dane (599)
      • Utrzymuj elastyczność danych (599)
      • Pozwól na elastyczne wyszukiwanie (600)
      • Klasyfikuj dane (600)
      • Redukuj, ale nie usuwaj (601)
      • Używaj tekstowych opisów (601)
      • Stwórz obszerny indeks (601)
  • Natychmiastowe rozwiązania (602)
    • Przeszukiwanie jednego serwera (602)
      • search() (602)
      • array_display() (605)
      • Biblioteka Stanowa Południowej Australii (605)
      • Bell Labs (606)
    • Przeszukiwanie kilku serwerów (608)
      • Źródło danych (608)
      • Parametry wyszukiwania (608)
      • Funkcja search() (608)
      • Funkcja array_display() (612)
      • Testowanie wyszukiwania (612)
      • Wyniki (612)
    • Przeszukiwanie google.com (613)
      • Formularz (613)
      • Surowe wyniki (615)
      • Wyniki po edycji (615)
      • Wyświetlanie wyników (616)
    • Indeksowanie danych (617)
Rozdział 19. Sesje (621)
  • Szczegółowe omówienie (621)
    • Korzyści dla właściciela (622)
    • Korzyści dla użytkownika (622)
    • Identyfikator sesji (622)
    • Cookie (623)
      • HTTPS (624)
      • Cookie kontra URL (624)
    • Pliki kontra bazy danych (624)
    • Mechanizmy sesji w PHP (625)
      • php.ini (625)
      • Funkcje sesji w PHP (627)
    • Obsługa klientów (635)
  • Natychmiastowe rozwiązania (635)
    • Rozpoczynanie sesji z wykorzystaniem cookie i plików (635)
    • Rozpoczynanie sesji z wykorzystaniem MySQL (640)
    • Wyświetlanie listy bieżących użytkowników (649)
    • Użycie funkcji session_end() (651)
      • Pliki (651)
      • Bazy danych (651)
Rozdział 20. XML (655)
  • Szczegółowe omówienie (655)
    • Co to jest XML? (655)
      • Na czym polega magia XML? (655)
      • Co potrafi XML? (656)
      • Czego XML nie potrafi? (656)
      • XML nie zastępuje HTML (657)
    • Dane (657)
      • Jednostki zewnętrzne (659)
      • Jednostki nieprzetwarzane (659)
      • Pisanie złożonych definicji DTD (660)
    • Struktura (660)
      • Nazwy (660)
      • Atrybuty (660)
      • CDATA (661)
      • DTD (661)
      • Przestrzeń nazw (663)
      • XLink oraz XPointer (663)
    • Funkcje XML (663)
      • Instalowanie XML (663)
      • Funkcje (664)
    • XSLT (671)
      • HTML, DHTML czy XSLT? (671)
      • Instalowanie XSLT (672)
      • Funkcje XSLT (672)
    • WDDX (675)
    • DOM (676)
      • Instalowanie DOM XML (676)
      • Funkcje DOM XML (677)
  • Natychmiastowe rozwiązania (682)
    • Wyświetlanie plików XML (682)
    • Wyświetlanie danych XML (683)
    • Przetwarzanie danych XML (686)
    • Dopasowanie znaczników początkowych i końcowych (690)
Dodatek A Zawartość płyty CD-ROM (695)
Skorowidz (697)