Bevezető
Ha már elég jól kiismered magad a HTML rejtelmeiben, nem okoz gondot egy statikus weboldal elkészítése. Statikus oldal alatt azt értjük, hogy a böngésző mindig azt és csak azt mutatja, amit a készítője a forráskódba beleírt. Hamar rájössz azonban, hogy ma ez már kevés - sok színvonalas weboldalon lehet dinamikusan generálódó tartalomrészeket találni, hacsak nem az egész oldalt állítják össze ilyen módon (ismét egy új fogalom: dinamikusan alatt értsük, hogy a megjelenített tartalom, vagy annak egy része nem szerepel az eredeti forráskódban, hanem a körülményekről függően változhat). Előbb-utóbb mindenkiben felmerül az igény ilyen oldalak létrehozására. Hogyan készíthetünk weboldalainkhoz saját vendégkönyvet, oldal elérési statisztikát... Ennek az alapjait fogjuk most megtanulni.
fel...
A PHP története
A PHP egy webes programozási nyelv. Egy egyszerű makrokészletnek készítette Rasnus Lerdorf 1994-ben Personal Home Page Tools néven, azonban a képességeinek bővülésével rohamosan bővült használóinak száma. A PHP 3. verzióját 1997-ben adták ki, ez már tartalmazott űrlapfeldolgozást és adatbázis kezelést is, a 2000-ben kiadott 4. változattal végképp egy univerzálisan használható nyelvvé vált a webprogramozók körében. Legújabb, 5. változatát 2004-ben adták ki. Dinamikus weboldalak készítéséhez jelenleg világszerte a legnépszerűbb nyelv. A PHP rövidítés jelentése: Hypertext PreProcessor.
fel...
Hogyan működik?
A PHP szerveroldali webprogramozói nyelv. Mit jelent ez? Legelső dolgunk lenne ezt tisztázni.
Lássuk először hogyan kerül egy PHP oldal a böngészőbe?
- Amikor a böngésző címsorába beírunk egy webcímet, vagy egy oldalon egy linkre kattintunk, a böngészőnk egy kérést küld a weboldalt tároló webszervernek. A kérés tartalmazza a kért dokumentum elérési útját és fájlnevét a szerveren (és még néhány más dolgot is, de egyelőre ezt ne bonyolítsuk...)
- A webszerver fogadja a kérést és kikeresi a kért fájlt. A ez statikus oldal, akkor nincs vele semmi dolga, úgy, ahogy van, elküldi a kliensnek. Ha azonban a kért fájl nevéből látja, hogy feldolgozandó kódot tartalmaz, akkor először átadja azt a webszerver mellé telepített PHP értelmezőnek.
- A PHP értelmező elolvassa a forráskódot, a benne talált PHP kódot lefuttatja, végrehajtja a PHP utasításokat, ebből egy kimenetet generál és a kimenetet visszaadja a webszervernek.
- A webszerver az így generált új kódot fogja az eredeti fájl helyett elküldeni a böngészőnek.
Na jó, de honnan látja, hogy ez staikus oldal, vagy egy feldolgozandó fájl? Ez a fájl kiterjesztéséből látható. A feldolgozandó fájlok kiterjesztései a szerver konfigurációs állományában adhatók meg, alapértelmezetten a .php kiterjesztésű fájlok a feldolgozandó PHP fájlok (ez nem is meglepő).
oldalam.html ezzel nem csinál semmit, csak elküldi a kliensnek, kepem.jpg még ezzel sem történik semmi a szerveren, de oldalam.php ezt már továbbküldi a PHP értelmezőnek.
Fontos megjegyezni:
- A PHP kódok végrehajtása a webszerveren történik. Ha saját gépünkön nyitunk meg egy PHP fájlt, csak annak forrását látjuk nem az eredményt.
- Mivel a PHP a szerveren lesz vágrehajtva, a JavaScript pedig a böngészőben, a két nyelven írt utasítások soha nem fognak együttműködni.
- forráskódunk fájlneve mindig .php kiterjesztésű legyen.
A PHP, hasonlóan a HTML-hez, szövegalapú utasítások sora. Elkészítéséhez elég akármilyen karakterszerkesztő program, akár a Windows Jegyzettömbje (Notebook) is. Lehet egy fájlon belül HTML és PHP kódokat vegyesen használni, akár a PHP kódok közé is be lehet ágyazni a HTML kódokat.
Lássunk végre az első PHP kódunkat, írjuk ki a hagyományos 'Helló világ' szöveget: <html>
<head>
<title> PHP leírás - 1. példa </title>
</head>
<body>
Én HTML kód vagyok <br />
<?php
print ("Én pedig egy PHP kód vagyok!");
?>
</body>
</html>
Mindjárt láthatjuk, hogy a beágyazott PHP kódrészt a <?php és a ?> elemek fogják közre. Tehát, ha a PHP értelmező ilyen jeleket talál, a köztük lévő kódrészt fogja futtatni, a máshol talált HTML kódokat változatlanul küldi a kimenetre. Itt egy php utasítást használtunk, a print() függvényt, ami a zárójelei között paraméterként megadott karaktersort írja ki a kimenetre. (A függvényekről később többet is meg fogunk tudni.)
Ha ezt a forrást a PHP értelmező lefuttatja, ilyen oldalt kapunk a böngészőbe. Nézd meg a forrását: nem lehet látni belőle, hogy ez egy statikus, vagy dinamikusan generált tartalom - a PHP kódrészek eltűntek, a webszerver csak a HTML kimenetet küldi el a böngészőbe.
Elkészítettük lehát első futásidőben generált, dinamikus oldalunkat. Az eredmény még nem valami sok, de lesz ez még jobb is!
fel...
Hogyan gyakoroljunk?
Amint azt már megbeszéltük, a PHP kódokat nem lehet közvetlenül a böngészőben megnézni - azokat előbb egy webszerveren kell feldolgoznia a PHP értelmezőnek. Saját gépen gyakorláshoz ehhez webszervert kell telepíteni, ami sokaknak kedvét szegi már az elején. Ehelyett ajánlom mindenki figyelmébe azokat az ingyen regisztrálható tárhelyeket, ahol engedélyezve van a PHP kódok használata (ez külön feltüntetik), illetve a bátrabbak nekivághatnak a telepítésnek is. Ezt lehet elemenként is elvégezni (ingyen letölthetők a Php és a Apache honlapjáról), nekünk azonban teljesen megfelel valamilyen komplett telepítő csomag is. Magam az EasyPhp 1.7 csomagot használom, minden előismeret nélkül is pár perc alatt fent van. Hasznos leírás található hozzá itt, vagy a PHP kézikönyvben is.
A következő fejezettől belevágunk a sűrűjébe. |