Honlapkészítés során, ha a hagyományos módon – statikus HTML fájlokat gyártva – állsz neki a munkának, előbb vagy utóbb belefutsz abba a problémába, hogy elég macerás frissíteni az anyagot, pl. grafikailag. Kivéve, ha frame-ekkel oldottad meg, erről majd beszélek később.
Vegyünk egy példát:
Van egy honlapod, 1 kezdőlappal és 20 aloldallal együtt. A fájlok jelenleg HTML kiterjesztéssel vannak fent a szerveren, és mindegyik HTML fájlok tartalmazza a komplett grafikát.
Úgy döntesz, az egyik képet ki szeretnéd cserélni a fejlécben, de ezzel megbontod az eddigi arányokat is (amit pl. táblázatokkal oldottál meg), mit tudsz csinálni? Túl sok mindent nem, kénytelen vagy 21x módosítani ugyanazt a képet+táblázatot.
Ugye nem túl kényelmes …?
Egy másik lehetőség, hogy a lapodat frame-ekkel oldod meg, a fejléc, menü stb.. szóval az állandó elemek frame-ekbe kerülnek, így tulajdonképpen kevés munkával könnyen lehet frissíteni az egész lap kinézetét.
Mi van akkor, ha neked vmiért nem tetszik a frame-s megoldás, vagy vmi oknál fogva csak nem alkalmazható az adott szituban? Bőven elképzelhető a szitu, én pl. nagyon nem szeretem a frame-s lapokat (bár elvétve látni 1-1 egész jól sikerültet)
A 3. megoldás a PHP használata. Nem kell megijedni tőle, egyeltalán nem vészes a dolog, nem kell programozni tudni vagy hosszú kódokat böngészni, elég ha a copy-paste-t tudod kezelni :)
Tartalomjegyzék
Honlapkészítés a php switch get segítségével
Először is hozz létre egy index.php nevű fájlt, ez lesz az alapértelmezetten megjelenő fájlod a könyvtárban, és ugyanakkor ez lesz a sablon/theme/skin (ki hogy hívja) is, ami a grafikát tartalmazza. A többi lapod (20db) tartalmát ebbe fogod úgymond beleolvasztani.
Miután létrehoztad az index.php-t, nyisd meg egy webszerkesztő programban (pl. Dreamweaver, Frontpage stb..), és készítsd el ugyanúgy, ahogy azt anno a index.html fájloddal is tetted. Csináld meg a fejrészt, a menüket, a lábrészt stb…, de azt a területet, ahova anno a kezdőlap tartalmát alkotó szöveget (köszöntés, bevezetés stb..) tetted, hagyd üresen. Ide fog jönni a PHP kód.
beillesztendő PHP kód
<?php switch($_GET["id"]) { case "lap1": include "lap1.html"; break; case "lap2": include "lap2.html"; break; default: include("bevezetes.html"); break; } ?> |
Ezt úgy ahogy van, másold be az index.php fájl azon területére, ahol majd szeretnéd, hogy megjelenjen a tartalom.
A kód tulajdonképpen csak annyit csinál, hogy ha a hivatkozásban (link) a „lap1” azonosító szerepel, akkor az index.php-ba betölti a „lap1.html” nevű fájlod tartalmát.
Ha a hivatkozásban a „lap2” fog szerepelni, akkor meg természetesen a „lap2.html” tartalmát, és így tovább … nem írom végig 20x :)
Neked csak annyit kell tenned, hogy a kód 3 sorát mindig copypaste-eled egymás alá, és átírod a tartalmát (A lap1 -t illetve a lap1.html rész, amik az idézőjelek között szerepelnek).
case "lap1": include "lap1.html"; break;
Az alapértelmezett kezdőoldal beállítása
Az kód végén található „default” kezdetű részlet felel azért, hogy mikor a látogató megnyitja a honlapodat, akkor alapértelmezetten melyik fájlt töltse be az index.php-be (ez jelen esetben a bevezető szöveget tartalmazó „bevezetes.html” lesz.
Hivatkozások, avagy a linkek
A hivatkozásokat kell kicsit másképp megadni mint eddig, hisz ezt megelőzően mondjuk csak ennyi volt:
tovább a lap2-re
Ezentúl, ha azt akarod, hogy az index.php-be töltse be vmelyik fájlod tartalmát, az alábbi szerint kell módosítanod a linket:
tovább a lap2-re
Minden esetben benne kell legyen az index.php fájlnév, egy kérdőjel, az „id” szócska és egyenlőségjel, és a végére kell illeszteni azt az azonosítót, ami a betölteni kívánt fájlhoz meg lett adva a kódban.
Demo és letöltés
A fent látott példához elkészítettem egy sablon „honlapot”, persze grafikailag/tartalmilag ne várjatok sokat tőle. ;) Ha valahol elakadtok, ha vmi nem teljesen egyértelmű és tiszta, nézzétek meg a forráskódot, remélem segíteni fog.
A demo honlap megtekinthető itt:
A demo honlap letölthető innen: www.tutorial.hu -> letoltes -> script.sources (1.5kb)
egjegyzések
– A file kiterjesztése, ahova ezt a kódot beszúrod, mindig PHP-nak kell lennie.
– Amely fájlokat behúzza, az lehet PHP, HTML, TXT stb…., de ha HTML formázásokat tartalmaz pl. a TXT, akkor azok természetesen a weben már formázva jelennek meg.
Helló!
Nem találom a letöltések között ennek a leírásnak a demoját. Honnan tudnám megszerezni?
TeXe: pedig ott van az
http://www.tutorial.hu/letoltes/index.php?mod_dir=/scriptek/phpswitchget&