navigace + include
15 příspěvků
Archiv diskusního fóra
Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.
-
Poradí někdo začátečníkovi pls? Mám stránky, které jsou umístěné v rootu. Pomocí include pak vkládám hlavičku a patičku. Hlavička a patička jsou umístěné v adresáři include. Pak mám ovšem ještě některé stránky v dalším adresáři řekněme třeba abc. Odkazy v hlavičce a patičce odkazují všechny na root, protože tam je také většinou vkládám. Jenomže pokud budu chtít hlavičku a patičku vložit do stránek v adresáři abc, tak samozřejmě odkazy nebudou fungovat, protože standarně jsou nasměřovány do rootu. Poradí někdo nějaký odkaz, kde bych se dozvěděl jak na to, nebo mi přimo poradí zde? root: většina stránek (vkládám include (header/footer.php) adresář include: header.php a footer.php adresáš abc: další stránky (vkládám header/footer.php, ale potřebuji, aby fungovaly odkazy). Díkas za rady php borci:-))) PS: Snad jsem to napsal srozumitelně...
-
Do adresare vyssi urovne (bliz korenu) se dostanes pomoci 2 tecek. napr. v souboru /abc/neco.php chces includovat soubor /footer.php include "../footer.php";
-
cožpak o to, tohle ještě chápu. Ale o to mi nejde. Takže jinak: soubor header.php v aresáři include <a href=menu.php>odkaz1<a> <a href=menu1.php>odkaz 2<a> <a href=menu2.php>odkaz 3<a> soubor index.php v rootu <include (include/header.php); Všechno, ok, protože odkaz menu.php, menu1.php a menu2.php funguji soubor abc.php umisteny v adresari abc <include (../include/header.php); Tady je problem, protože odkazy menu.php, menu1.php a menu2.php odkazuji na rootu, ale mělo by to byt ../menu.php, ../menu1.php a ../menu2.php díkas
-
A co takhle dat do odkazu "./menu.php" (s jednou tečkou). No já nevím, ale všichni říkaji, že to ./ odkazuje na root bez ohledu na tom, kde jsi.
-
Moznost je ta, ze ty odkazy udelas absolutne. Ale jinak bych rekla, ze celkove mas nejakou pofiderni strukturu. Pokud tomu dobre rozumim, mas hlavicku a paticku a mozna nejake menu - a ty jsou stabilni a nemeni se a meni se jen samotny obsah. Pak mi neni jasne, proc nedelas i tu samotnou zmenu obsahu pomoci includu - pak bys nemusel vkladat hlavicku a paticku pokazdy znova. To je dost neefektivni reseni. Mel bys vsechny stabilni prvky naincludovany jednou v indexu.php a pak bys k tomu dynamicky podle potreby includoval ostatni soubory podle potreby. A.
-
ad tomik: ./ neodkazuje na root ale na aktualni adresar!
-
cožpak o to, já bych to klidně takhle dělal, ale za žádnou cenu nechci, aby to pak vypadalo nějak takhle: index.php?id=neco Prostě bych chtěl mít normálně galerie.php, guestbook.php atd. Ok. Pokud to tedy jde takhle i bez onoho ?id=neco, prosim dejte vedet jak na to. cus funky
-
pokud se branis pouzivat parametry v odkazech, cimz se odepisujes od pouzivani globalni promenne $_GET, tak tim se uzaviras od znacne casti pouzivani PHP a podle me delas chybu. A pokud na tom trvas, tak podle me to nejde jinak nez skrze absolutni odkazy.
-
Anka: Tak, tak. Jsou to základy PHP.
-
hmmm, chapu. Tak ja jde hledat neco o parametrech a jak na to:-(
-
Nejelegantnejsi metoda pro tvuj pripad je podle me kombinace predavani parametru + fce switch ukazka zde> http://cz2.php.net/switch konkretne toto> <?php switch ($_GET['go']) { case "1": $inc = 'Page01.php'; break; case "2": $inc = 'Page02.php'; break; case "3": $inc = 'Page03.php'; break; case "4": $inc = 'Page04.php'; break; default: $inc = 'Page01.php'; break; } include ($inc); ?> s tim, ze to include muzes normalne napsat do tech jednotlovych "cases"
-
niečo podobné som riešil pred dvoma rokmi a stačilo zdvojiť inkludovaný súbor a zameniť "./" za "../" . Ten z dvoma tečkami ťahajú tie s adresárov, s jednou tie s rootu. Uspora miesta a jednochost su jasné.
-
ale houbinec .. je odkaz na nadřazený (rodičovský) adresář a . je aktuální. Jestli to náhodou fungovalo jinak, tak to byla náhoda. Ještě jsem pátral proč psát "./soubor" nebo "soubor" a je to tak, že "./soubor" hledá soubor jenom v aktuálním adresáři a "soubor" v aktuálním a dresáři a v cestě předepsané někde v ini v include. Takže pomalejší.... Ještě k tomu . coby rootu. Ono není vždycky úplně jasné, odkud se to tahá, když uděláš v rootu include třeba z "cosi/moje.php" a v moje.php máš zase include třeba "./tady.php" tak teď nevím, odkud to veme, ale myslím že právě z toho rootu, páč je to includované v rootu.... a teď jsem se do toho zamotal.. Ale myšlenka je jasná ne?
-
> uděláš v rootu include třeba z "cosi/moje.php" a v moje.php máš zase > include třeba "./tady.php" tak teď nevím, odkud to veme, ale myslím že > právě z toho rootu Prave ze ne. Vezme se to z adresare 'cosi'. Tohle je prave jeden z dusledku toho, ze include (require, include_once, require_once) vlastne nejsou funkce, ale konstrukt jazyka.
-
No, nevím, zkoušel jsem to ve win a nabídlo mi to includ z rootu...