| start Webszerkesztés egyéb PHP alapú megoldások php switch get II. |
| A kereséshez kattints a fentebb látható mezőbe > írd be a keresett kifejezést majd nyomj egy ENTER-t. FRISS FÓRUMTÉMÁK Kinek milyen a websiteja? II. [respector] Egyéni rajzok saját 5let alapján III. [D3fy] offtopic III. [BlackY] Emotikon hetek [Halfbreed] Joomla! (Mambo 4.5.x) [LeGaS] Help! [Mozaik] Segítséget kérnék [LeGaS] Hálózat [Flatron] Általános kérdések [Tirion] Php-s Probléma... [unduruxi] LAPAJÁNLÓ szoftver.hu Adobe, Macromedia, Extensis, Corel, Morphologic, Quark és még sok egyéb termék magyarországi forgalmazója RSS / META STATISZTIKA |  |
php switch get II. |  |
Írta: Harder
Az alábbi leírásnak már van egy előzménye, melyet "php switch get I." címmel megtaláltok a honlapon. Mivel e leírás annak továbbfejlesztett - és módszerben is újat adó - változata, a bevezető szöveg nagy része gyakorlatilag ugyanolyan lesz. Magát az ötletet és a kódot TLoF barátomtól kaptam, ezúton is nagy köszönet illeti! A 2 módszer közötti különbség: elég nagy, ha azt vesszük hogy teljesen más a kód. :) Ez viszont szerintem mellékes, ami fontosabb, hogy a második megoldás sokkal kényelmesebb! Az elsőnél részben ugye még az volt a menet, hogy amint új lappal bővült a lap, 3 új sorral kellett kipótolni a kezdő index.php-t (case, inluce, break). Ez nemcsak hogy plusz munkát jelentett, de a kezdőlap méretét is folyamatosan növelte. Ennek az új megoldásnak köszönhetően viszont csak egyszer kell az index.php-be illeszteni a kódot, a további lapokat elég ha egy általunk definiált alkönyvtárba tesszük be. A többit a kód elvégzi, nekünk csak linkelni kell a lapokra :) Most pedig jöjjön a tényleges leírás! 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 :) 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 $_GET['id'] = str_replace('../', '',$_GET['id'] ); if (isset($_GET['id']) and $_GET['id'] != '') { if (is_file("modulok/". $_GET["id"] . ".php")) { include("modulok/". $_GET["id"] . ".php"); } else { include("modulok/error.php"); } } else { include ("modulok/kezdolap.php"); } ?> 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 modulok alkönyvtárban talál olyan fájlt, aminek neve megegyezik az ID értékével+.php kiterjesztéssel, akkor beilleszti az index.php-ba a kód helyére. Az ID-t meg a linkekben adjuk meg. Nézzünk egy példát: van egy főkönyvtárban található index.php, van egy modulok könyvtár, és a könyvtárban vannak php oldalak, melyek neve: oldal1.php, oldal2.php, oldal3.php és oldal4.php. Ha a linket az alábbi módon adjuk meg: <A HREF="index.php?id=oldal2">link az oldal2-re </A> Az index.php-ban lévő kód az ID értékéhez (ami az oldal2) hozzáadja a .php kiterjesztést, majd az ezzel megegyező nevű fájlt betölti a modulok könyvtárból (ez lesz az oldal2.php). Ha nincs a feltételnek eleget tevő fájl, akkor az error.php-t jeleníti meg. Online demo A script működését illusztrálandó elkészítettem egy nagyon egyszerű "honlapot", ahol ki lehet próbálni a működését: http://www.tutorial.hu/webszerkesztes/phpswitchget2/ Maga a demo honlap is letölthető innen: www.tutorial.hu -> letoltes -> script.sources Megjegyzések : - A file kiterjesztése, ahova ezt a kódot beszúrod, mindig PHP-nak kell lennie. - Amely fájlokat behúzza, azoknak is PHP kiterjesztést ki kell adni. Kiegészítés: A fórumon utólagosan felvetett kérdés volt, mi a helyzet akkor, ha a behuzandó fájlok nem egy alkönyvtárban helyezkednek el, hanem pl. (ha a fenti mintához tartom magam) egy modulok/pstutorialok meg egy modulok/htmltutorialok (vagy akár több ilyen könyvtárban) nevű alkönyvtárban. A könyvtárszerkezet pl. így néz ki: -modulok/ ---------pstutorialok/ ---------------------tutorial01.php ---------htmltutorialok/ Ez esetben a linket így kell majd megadni: index.php?id=pstutorialok/tutorial01 Szerző: Harder Kódot írta: TLoF (http://www.kepregeny.net/)
< Előző |  | Következő >
[vissza]
(C) 2006 www.tutorial.hu - photoshop és webszerkesztés leírások Joomla! is Free Software released under the GNU/GPL License. | ### FÓRUMOK [WEB] Honlapkészítés témában az alábbi 2 alfórumunkat tekintsd meg: - webprogramozás (PHP, MySQL) - webszerkesztés, webdesign (ami a honlapkészítéssel kapcsolatos lehet) Az olvasáshoz nem, de a hozzászóláshoz regisztrálni kell magad. Javasoljuk a kereső használatát a kérdések feltevése előtt.. ;) ### LETÖLTÉSEK [WEB] Forráskód szerkesztők Könyvek Link menedzsment Kódoptimalizálás Scriptek, kódok Szervercsomagok ### ONLINE CUCCOK Linkek... - URL "tisztítás" - Url továbbítás - Linkrövidítés - Linkhosszabítás - halott linkek ellenőrzése - Aktuális IP címed Színek... - Colormixers - wellstyled.com - ReedDesign Colors - crieseuwebsite.com - more.btexact.com - colorcube - behr.com - workbook - Defence Mechanism ColorToy - ColorWhore - dev.sessions.edu - ficml.org - colorschemer.com - online - themaninblue.com - technicolor - colormatch.dk - nebulus.org - fullscreen color picker CSS... - Jano - CSS, usability stb. - js.hu CSS puska - CSS Box Border Teszt - CSS - CSS compatibility - Gördítősáv módosítása - CSS lapgenerátor I. Biztonság... - .htaccess és .htpasswd - .htaccess user tiltás - Egyéni hibalapok - Htaccess direktlink tiltás - Jelszavas védelem - Jelszó generátor I. - Jelszó generátor II. - MD4, MD5, SHA-1 Forráskód... - Tidy (online HTML tisztító) - HTML encoder - HTML titkosítás - E-mail encoder Generálnak ezt-azt... - i-Frame - Marquee - Felugró ablak I. - Felugró ablak II. - Meta tagok - Favicon I. - Favicon II. Képekhez... - JPG PNG GIF optimalizáló - kulcsszavak (keywords) - Online képszerkesztő - Honlap betöltési ideje - robots.txt generator Mintaszöveg... - lipsum.com - lorem-ipsum.info - malevole.com Fordítás... - translit.ru - dict.sztaki.hu szótár - babelfish szótár Egyéb... - - HTMLinfo - webes technológiák - Webdesigner's Handbook |