főoldal | számítástechnika | PHP haladóknak

Peter Moulding - PHP haladóknak - Fekete könyv

Eredeti cím: PHP - Black Book
Kiadás dátuma: 2002. március
ISBN: 9630095580
Méret: 19,2 x 25,5
Oldalszám: 768
Nyelv: magyar
Súly: 1,5 kg
tartalomjegyzék  |  mintafejezet  |  a szerzőről

Online rendelés (Az általunk üzemeltetett InterBook áruházban)

Minden, amit a PHP-ról tudnod kell

A HTML-dokumentumokba ágyazott PHP-szkriptekkel aktív szerver-oldalakat hozhatsz létre. Ebben a könyvben megtalálod a PHP összes technikáját, trükkjét és függvényét, melyek segítenek neked eljutni az egyszerű programozástól a dinamikus weboldalak elkészítéséig.

Több mint 25 éves fejlesztői tapasztalatával Peter Moulding segítségedre lesz abban, hogy a Windows vagy Unix alatti programozó és szkriptíró tudományodra építve elsajátítsd a PHP tudományát. A könyv megközelítésmódja és tudásalapja garancia arra, hogy megbízható és hatékony honlapokat készíts. Jól felépített lépések sorozatán keresztül megismerheted a PHP minden funkcióját, beleértve az adatbázisok használatát is. Tedd teljessé és meggyőzővé programozási ismereteidet és válj a PHP mágusává!

A könyv segít Neked:

  • Teljeskörű honlapkészítési és PHP ismeretek elsajátításában
  • Kiforrott és hatékony kódok írásában Windows és Unix alatt
  • Levelek küldésében és fogadásában a honlapodon keresztül
  • A MySQL- és a PostgreSQL-adatbázisok használatának megtanulásában
  • Cookie-k, session-ök, felhasználói profilok és biztonságtechnika használatában
  • A rendszeradminisztráció, az adatbeolvasás és a napi feladatok automatizálása terén
  • Adatok űrlapokba, tömbökbe, osztályokba és objektumokba való beillesztésében
  • Az összes fontos webtechnológia telepítésében és használatában: XML, LDAP, IMAP, MIME, WDDX, Z39.50, YAZ, XSLT és XSL
  • JPEG és PNG képek, illetve Flash-fájlok online létrehozásában
  • A Fekete Könyv sorozat

A Fekete Könyvek a globális programozási és adminisztrációs kihívásokra gyors megoldásokkal és mélyreható elemzésekkel válaszolnak. Problémamegoldó útmutatások és teljeskörű referencia könyvek egyben, így különösen nagy segítséget nyújtanak az olyan kritikus feladatok megoldásához, melyek más könyvekben nem megfelelően dokumentáltak.

A CD-ROM tartalma

A könyv CD-ROM-melléklete olyan speciálisan kiválasztott elemeket tartalmaz, amelyek növelik a könyv használhatóságát, így többek között található rajta:

  • Apache 1.3.20 - Az Apache-webszerver teljes verziója, az Apache Software Foundation (http://apache.org) forráskódjaival kiegészítve.
  • CygIPC 1.09 - Ingyenes, nyílt forráskódú NT 4.0 program a PostgreSQL és a CygWin összekapcsolására (http://sources.redhat.com/cygwin/).
  • CygWin 1.09 - Ingyenes, nyílt forráskódú NT 4.0 program, mely az NT POSIX kompatibilitásának kiterjesztésével segít a Unix-programok NT 4.0 alatti futtatásában.
  • Dia 0.88.2 - Ingyenes, nyílt forráskódú ábrarajzoló eszköz az NT, Windows 9x, Windows ME, Windows 2000, Unix és Linux rendszerekre, amelynek fejlesztői a www.lysator.liu.se/~alla/dia/-oldalon vannak felsorolva.
  • Gimp 1.22 - Ingyenes, nyílt forráskódú képszerkesztő eszköz a Gimp.org-tól (www.gimp.org) az NT, Windows 9x, Windows ME, Windows 2000, Unix és Linux rendszerekre.
  • MySQL 3.23.41 - Ingyenes, nyílt forráskódú relációs adatbázis a MySQL AB-től (http://mysql.com/) az NT, Windows 9x, Windows ME, Windows 2000, Unix és Linux rendszerekre.
  • PHP 4.0.6 - Ingyenes, nyílt forráskódú weboldal szkript- és programnyelv a The PHP Grouptól (http://php.net/) az NT, Windows 9x, Windows ME, Windows 2000, Unix és Linux rendszerekre.
  • PostgreSQL 7.1.3 - Ingyenes, nyílt forráskódú relációs adatbázis a PostgreSQL Inc.-től (www.pgsql.com/) az NT, Windows 2000, Unix és Linux rendszerekre.
  • Forráskód a könyv projektjeihez - Ezeket a működő kódokat közvetlenül beszúrhatod a weboldalra.

Online rendelés (Az általunk üzemeltetett InterBook áruházban)


Tartalomjegyzék

1. fejezet: PHP-bevezető
Áttekintés
Programozási 1x1
Egy kis történelem
Hibakeresés
A PHP előnyei
Értelmezés kontra fordítás
Részkódok kontra programozás
Kimenet-ellenőrzés
PHP4
Új függvények
Új név
Sebesség
PHP-hibakereső
A Windowsos COM
Reguláris kifejezések függvényei
PHP és Apache
A platformfüggetlen Apache
Modul vagy CGI
A PHP Zenje
Szintaktika
Ha, akkor, különben
A megfelelő adattípus
Szűkítsd a bejáratot, tágítsd a kijáratot
Gyors megoldások
Apache-konfiguráció
Egyedi Apache-függvények
apache_lookup_uri()
apache_note()
ascii2ebcdic() és ebcdic2ascii()
getallheaders()
PHP-konfiguráció
dl()
extension_loaded()
Hibakeresés
assert()
assert_options()
die()
Hibák
Naplózás
Kimenet-ellenőrzés
Biztonság
Reguláris kifejezések
ereg()
ereg_replace()
eregi()
eregi_replace()
split()
spliti()
2. fejezet: Adatok
Áttekintés
Adattípusok
Változók
Automatikus létrehozás
Konstansok
Hatókör
Műveletek az adatokkal
Kifejezések
Operátorok
Ellenőrzés és szerkezet
Függvények
Kategóriák és objektumok
Adatok az adatbázisoknak
Adatok a HTML-nek
Dátum és idő
Julianus-dátum
Idő
Naptár
Matematika
Egész matematika
Lebegőpontos matematika
Tetszőleges pontosságú matematika
Gyors megoldások
Adatok létrehozása
Sztring-adatok
Egész és lebegőpontos adatok
Adatok ellenőrzése
Adatkonvertálás
Sztringfüggvények
rand(), srand() és microtime()
Dátum és idő kiszámítása
Húsvét
3. fejezet: Tömbök
Áttekintés
Egyszerű tömbök
A világ legegyszerűbb tömbje
A tömböket 0-tól számozzuk
A tömb elemeit bárminek elnevezhetjük
Tömblétrehozó függvények
Lehetséges problémák
Többdimenziós tömbök
A tömbmutató
Tömbök rendezése
Push, Pop, Pad és Merge
Push és Pop
Pad
Merge
Gyors megoldások
Tömbök létrehozása listából az array()-jel
Tömbök létrehozása sztringből az explode()-dal
Tömbök létrehozása sztringből az implode()-dal
Elemi SQL
select
where
order by
group by
SQL építése
Az adatok tartományának kijelölése a range() segítségével
Kulcstartomány kijelölése a range() és az array_flip() segítségével
Duplikát tömbértékek megszüntetése az array_flip() segítségével
Tömb véletlenszerűsítése a shuffle() segítségével
Bannerek véletlenszerűsítése az array_rand()-dal
Fájl tömbbe olvasása a file() segítségével
Tömb rendezése érték szerint a sort() segítségével
Asszociatív tömb rendezése érték szerint az asort() segítségével
Tömb érték szerinti fordított sorrendbe rendezése az rsort() segítségével
Asszociatív tömb érték szerinti fordított sorrendbe rendezése az arsort() segítségével
Asszociatív tömb kulcs szerinti rendezése a ksort() segítségével
Tömb érték szerinti természetes rendezése a natsort() segítségével
Tömb nem természetes rendezése az usort() segítségével
Fordított ciklus a tömbelemeken
Ciklus a többdimenziós tömbökön
4. fejezet: Bankkártyák
Áttekintés
Kereskedői bankszámla
Gyerekek
Számlázási név
Biztonság
Szerver
Hash-elés
Titkosítás
Az mcrypt telepítése
mcrypt-függvények
Elektronikus fizetési szoftverek
CyberCash
Payflow
CCVS
Gyors megoldások
Adatok hash-elése
mhash()
mhash_get_hash_name()
mhash_get_block_size()
mhash_count()
mhash_keygen_s2k()
5. fejezet: MySQL és PostgreSQL
Áttekintés
Történet
MySQL
PostgreSQL
Néhány különbség
Dátumok
Kis- és nagybetűk megkülönböztetése
Tranzakciók
Tárolt eljárások
Triggerek
Nézetek
Adattípusok
Bitek
Egész számok
Lebegőpontos számok
Sztringek
Blobok
Dátum és idő
A PostgreSQL különleges típusai
Azonosítók beillesztése
Platformfüggetlenség
Adatbázis nyers adatokból
Adatbázisok és tömbök
Indexelni vagy nem indexelni
Kapcsolatok
ODBC
Gyors megoldások
Kapcsolódás az adatbázishoz
Az adatbázisok listázása
Adatbázistáblák megjelenítése
Táblák mezőinek megjelenítése
Táblák adatainak megjelenítése
Adatsor beillesztése
Adatbázis létrehozása
Táblák létrehozása
Adatbázisok használata session-ökhöz
A kód megtisztítása
6. fejezet: Adatbázisok
Áttekintés
SQL
Indexeljünk vagy ne indexeljünk
Kapcsolatok – Relációk
Állandó kapcsolatok
ODBC
DB2
SAP DB
Más adatbázisok
Adabas
A filePro olvasása
A FrontBase olvasása
Hyperwave
Informix
Ingres II
InterBase
Microsoft Access
Microsoft SQL Server
mSQL
Oracle
Ovrimos SQL Server
SESAM/SQL-Server
Solid
Sybase
Adatbázis-absztrakciós rétegek
DBA-utasítások
DBM-utasítások
DBX-utasítások
Gyors megoldások
Adatbázis elérése ODBC-vel
Eredmények
Hibák
Mezőkkel kapcsolatos információk
További utasítások
Új utasítások
Adatbázis elérése DBA-utasításokkal
Adatbázis elérése DBM-utasításokkal
Adatbázis elérése DBX-utasításokkal
Ingres II elérése
Időzítések kinyerése: út a teljesítményhez
7. fejezet: Környezet
Áttekintés
Apache
A PHP konfigurálása
Kiterjesztések
A php.ini beállításai
Időkorlát
Környezeti változók
Biztonság
HTTP-hitelesítés
CHMOD
PHP kötegelt módban
A PHP ütemezése
COM
Könyvtár- és fájlnevek
Linux és Unix
Windows NT
Macintosh
POSIX
A programok kommunikációjának elősegítése
Megosztott memória
Szemaforok
Külső programok
Extra információ
mnoGoSearch-függvények
Gyors megoldásokok
A régi fájlok eltávolítása
Külső programok végrehajtása
Word-dokumentumok Rtf-formátumba konvertálása COM segítségével
HTTP hitelesítés példa
Hogyan igazítsuk a kódot a környezethez?
Hibanaplózás
Menekülő látogatók
Szkript időtúllépés
Az adatbázis kiválasztása
Böngésző-alapú kódok
Utasítások ellenőrzése
Ellenőrzés a fejlécek elküldése előtt
A PHP ellenőrzése
A memória ellenőrzése
Szokatlan formátumok megjelenítése
Képek biztonságos megjelenítése
8. fejezet: Fájlok
Áttekintés
Könyvtárak
Apache-nézet
PHP-nézet
Nézetek váltása
Fájltípusok
Fájlok megjelenítése
Fájlok létrehozása és megváltoztatása
Fájlok másolása
Ideiglenes fájlok
Fájlok feltöltése
Fájllista-cache
Engedélyezés/Jogosultságok
Gyors megoldások
Könyvtárak listázása
Közös kód
Az is_dir() megközelítés
A filetype() megközelítés
A get_directory_file() megközelítés
Formázott fájllista
Egyéb könyvtárfüggvények
Könyvtárak létrehozása és törlése
Fájlok listázása az attribútumokkal együtt
Általános kód
A get_directory_file() kiterjesztése
Formázott fájllista
További attribútumok
Lemezterület-kimutatás
Általános kód
A get_directory_file() kiterjesztése
Üres lemezterület
Fájllista és elfoglalt lemezterület
A könyvtárak által elfoglalt lemezterület kiíratása
A legnagyobb könyvtárak által elfoglalt lemezterület kiíratása
A legnagyobb fájlok által elfoglalt lemezterület kiíratása
Képfájlok attribútumainak kiíratása
Képinformációk kigyűjtése
Képinformációk megjelenítése
Bármilyen típusú adat megjelenítése
Általános kód
Szövegfájl megjelenítése
HTML-fájl megjelenítése
Bármilyen típusú fájl megjelenítése
Üres fájlok létrehozása
Fájlok feltöltése
CRC-számolás fájlokra
9 fejezet: űrlapok
Áttekintés
Alternatív navigáció
HTML vagy tisztán PHP?
A minimális HTML
Bell és Whistle
űrlapkérdések
Összetett műveletek
JavaScript
A csinos gördülőmenük eltávolítása
Mezők érvényesítése a szerveren
Hosszú űrlapok
A hosszú űrlapok feldarabolása
Az információ oldalról oldalra való továbbítása
Használható hosszú űrlapok tervezése
Fájlok feltöltése
Gyors megoldások
űrlap létrehozása
űrlapok létrehozása függvényekkel
Hosszú lista létrehozása űrlapon belül
Oszlopok igazítása
Egy válasz a sok közül
Egy válasz a sok közül rádiógombokkal
Több válasz a sok közül
Válaszok megőrzése és hibák kiemelése
10. fejezet: Függvények
Áttekintés
A világ legrövidebb függvénye
Értékek visszaadása
Értékek bevitele
Tetszőleges értékek
Változó számú beviteli mezők
Hatáskör
Statikus változók
Rekurzió
Változóban elnevezett függvények
Sorrend
Gyors megoldások
Függvény létrehozása
Globális változó deklarálása
Statikus változó deklarálása
Függvény tárolása változóban
Alapértelmezett függvényparaméterek használata
A függvény létezésének ellenőrzése
A call_user_func() használata
A create_function() használata
A func_get_arg() és a func_num_args() használata
A func_get_args() használata
Shutdown-függvény beiktatása
11. fejezet: Képek
Áttekintés
GIF
PNG
JPEG
PDF
ClibPDF
FDF
PDFlib
Flash és Shockwave
A fájl
Képkocka
Szín
Objektumok
Szöveg
Bittérképek és szimbólumok
Műveletek
Gombok
Képadatbázisok
MySQL
Egyéb SQL-adatbázisok
Hyperwave
A képi modul telepítése
Képek megjelenítése
Mindig használd az Alt-ot az image tag-ben
Használd a méretinformációt az image tag-ben
Vázlatképek létrehozása
Képek létrehozása
Képek változtatása
Színek változtatása
Átméretezés és újbóli mintavételezés
Külső programok
A megfelelő formátum kiválasztása
Gyors megoldások
Képek listázása
Képinformációk gyűjtése
Képinformáció kiíratása
Szöveg létrehozása PDF-dokumentumban ClibPDF-fel
Szöveg létrehozása PDF-dokumentumban PDFlib-bel
Szöveg létrehozása GIF-, JPEG- vagy PNG-képekben
Diagram létrehozása GIF-, JPEG- vagy PNG-képekben
12. fejezet: Nemzetközi beállítások
Áttekintés
Nyelv vagy ország észlelése
Nyelv vagy ország észlelése a böngészőből
Nyelv vagy ország észlelése az Apache-csal
A legjobb megoldás a PHP
Nyelvi követelmények
Alkalmazásspecifikus vagy honlapspecifikus beállítás
GNU-recode
GNU-gettext
Helyesírás
Szóegyeztetés
Aspell
Pspell
Több-bájtos karakterek
Gyors megoldások
Országinformáció létrehozása
Országinformáció tárolása
Országinformáció visszakeresése
Session-ök használata az országinformációkra
Üzenet keresése más nyelvben a GNU-gettext-tel
Szöveg keresése más nyelvekben SQL-lel
A karaktertípusok ellenőrzése
Kifejezések és helynevek egyeztetése levenshtein()-nel
13. fejezet: Internet
Áttekintés
URL
Séma vagy protokoll
Host
Elérési út
Oldal
Töredék
Lekérdezés
Különleges karakterek
Base64 kódolású szöveges sztringek
Más szerverek böngészése
Csatolófüggvények
SNMP
Curl
FTP
Gyors megoldások
Base64 kódolás
A web böngészése PHP-val
Linkek ellenőrzése
FTP-függvények használata
Curl használata
Curl-opciók
14. fejezet: LDAP
Áttekintés
Telepítés
Terminológia
DN – megkülönböztetett nevek
RDN – relatív megkülönböztetett nevek
Szintek
Elemek
Attribútumok
Objektum
DIT
Séma
LDIF
Szerverjellemzők
Küldés
Másolás
Biztonság
LDAP-függvények
Gyors megoldások
LDAP Windows NT alatti telepítése
PHP-kiterjesztés
OpenLDAP-szerver
A szerver tesztelése
Csatlakozás az LDAP-hez
Országkódok hozzáadása
Csatlakozás
Országkódok megszerzése
Országkódok formázása
Az első országkód hozzáadása
További országkódok hozzáadása
Felhasználó hozzáadása
Közbülső szintek hozzáadása
A végső szint hozzáadása
Hibakezelés
Az összes elem listázása
Az egy szinten levő összes elem listázása
Az összes szint összes elemének listázása
Az elemek értelmezése a listázáson belül
15. fejezet: Posta
Áttekintés
IMAP
Postaládafüggvények
Levelezési függvények
Kiemelőfüggvények
Sztringkonvertáló függvények
Egyéb függvények
Levélfejrészek
Minimális fejrészek
További fejrészek
MIME
MIME-Version
Content-Type
Content-Transfer-Encoding
Content-ID
Content-Description
Content-Disposition
Működési üzemmódok
Offline
Online
Kapcsolat nélkül
Átmeneti
Gyors megoldások
A PHP levelező függvényeinek telepítése
Windows NT
Unix
Levél küldése
Egy levél küldése
A From fejrész elküldése
Több fejrész küldése
Egy üzenet küldése több címzettnek
Levél küldése csatolt állománnyal
Tesztadatok kiválasztása
Fájlinformációk gyűjtése
MIME-fejrészek létrehozása
MIME-üzenetrészek létrehozása
Nem MIME-fejrészek létrehozása
A levél elküldése
Levelezési címek ellenőrzése
16. fejezet: Hálózatok
Áttekintés
A hibakereső
DNS- és MX-rekordok
Host-nevek
IP-címek
ip2long()
long2ip()
Protokollnevek és -számok
Szolgáltatás nevek és port-számok
getservbyname()
getservbyport()
Csatolók
pfsockopen()
socket_get_status()
socket_set_blocking()
socket_set_timeout()
Rendszernapló
define_syslog_variables()
openlog()
syslog()
closelog()
NFS
NIS
Térkép
yp_get_default_domain()
yp_master()
yp_order()
yp_match()
yp_first()
yp_next()
WDDX
WDDX csomag
CORBA
orbitobject()
orbitenum()
orbitstruct()
satellite_caught_exception()
satellite_exception_id()
satellite_exception_value()
Tömörítés
bzip2
gzip
Gyors megoldások
DNS-rekordok vizsgálata
MX-rekordok megszerzése
A host-név megszerzése
A host-név megszerzése cím alapján
A host-cím megszerzése név alapján
Host-címek listázása név alapján
Protokollszámok felsorolása
Adatok besorolása WDDX-szel
wddx_serialize_value()
wddx_deserialize()
serialize()
wddx_serialize_vars()
wddx_deserialize() változókkal
wddx_packet_start()
wddx_add_vars()
wddx_packet_end()
Adatok tömörítése zlib használatával
Saját napló írása
17. fejezet: Objektumok
Áttekintés
Osztályok
new
Mint egy változó
stdClass
Tulajdonságok
var
Konstruktor
$this
Módszerek
Megsemmisítő
Osztályok kiterjesztése
Függvények hozzáadása
Konstruktorok a kiterjesztett osztályokban
Függvények cseréje
Függvények törlése
Többszörös kiterjesztések
::
parent
Szoftverterjesztés és dokumentáció
Többszörös adatelemek és állapot
Többszörös kimenet
Gyors megoldások
Objektumok mentése sessiönökben és a __sleep() használata
Objektumfüggvények használata
call_user_method()
call_user_method_array()
class_exists()
get_class()
get_class_methods()
get_class_vars()
get_declared_classes()
get_object_vars()
get_parent_class()
is_subclass_of()
method_exists()
Honlap testreszabása objektumokkal
Hírcsoportok olvasása
18. fejezet: Keresés
Áttekintés
Keresőprogramok felkutatása
LDAP
Z39.50
YAZ
A YAZ telepítése
Adatforrások
Tesztelés
RPN
Keresés YAZ-val
Nem támogatott keresés
YAZ-függvények
Adatbázis alapú keresések
Adatok megőrzése eredeti formájukban
Rugalmas adatok
Rugalmas keresések
Az adatok oztályozása
Csökkenteni, de meghagyni
Szabad szövegasszociációk használata
Készíts nagy tárgymutatót
Gyors megoldások
Keresés egy szerveren
search()
array_display()
Dél-Ausztráliai Állami Könyvtár
Bell Labs
Keresés több szerveren
Adatforrás
Keresési paraméterek
search()
array_display()
A keresés tesztelése
Az eredmények
Keresés a google.com-on
Az űrlap
A nyers eredmények
Eredmények szerkesztése
Eredmények megjelenítése
Adatok indexelése
19. fejezet: Session-ök
Áttekintés
A honlap tulajdonosának haszna
A látogató előnyei
Sessionazonosító
Cookie-k
HTTPS
Cookie-k vagy URL-ek
Adatok vagy adatbázisok
PHP-szolgáltatások
php.ini
PHP session-függvények
Vásárlói szolgáltatások
Gyors megoldások
Session indítása cookie-kkal és fájlokkal
Session indítása MySQL használatával
Az aktuális felhasználók megjelenítése
A session_end() használata
Fájlok
Adatbázisok
20. fejezet: XML
Áttekintés
Mi az XML?
Miért csodálatos az XML?
Mit csinál az XML?
Mit nem csinál az XML?
AZ XML nem helyettesíti a HTML-t
Adatok
Külső elemek
Nem értelmezett elemek
Komplex DTD-k írása
Szerkezet
Nevek
Attribútumok
CDATA
DTD
Névmezők
Xlink és XPointer
XML-függvények
Telepítés
Függvények
XSLT
HTML, DHTML vagy XSLT?
Az XSLT telepítése
XSLT-függvények
WDDX
DOM
A DOM XML telepítése
DOM XML-függvények
Gyors megoldások
Az XML-fájlok megjelenítése
Az XML-adatok megjelenítése
XML-adatok értelmezése
XML nyitó- és zárótag-ek összeillesztése