Autor Zpráva
inetMark
Profil
Na importnovatie hlavicky a paticky pouzivam PHP funkciu include. Niektore stranky, chcem vsak umiestnit do podadresara (teda nie do hlavneho adresara) a tam mi nastava problem. Ak pouzijem to co pouzivam, tak mi to samozrejme nenacita, musim sa vratit o adresar vyssie a tak som napisal toto:
<? include "../menu.php"; ?>
Sice mi to obsah includuje, ale nastane problem pri nacitani obrazkov, stylu a podobne (kedze su umiestnene tiez v hladnom adresari v podadresari images).
Ako sa da prosim tento problem riesit? Musim napriklad cely adresar images nakopirovat aj do podadresara, kde chcem mat tu dalsiu stranku?
temistokles
Profil
Nakopíruj si všetky includy do jedného adresára a použi include path :) Alebo ich rovno hoď do adresára s php.ini, potom tuším netreba nastavovať nič. Avšak moje riešenie bude problematické, ak nemáš prístup ku konfigurákom, možno by to šlo cez .htacccess, ale tým som si nie istý.
Alphard
Profil
načítej root: /images/01.jpg
inetMark
Profil
to temistokles: Neviem presne ako to myslis. Includuje sa hlavicka a paticka a ta je stale v jednom adresary a to v tom hlavnom. Ako sa presne pouzite include path?

to Alphard: Skusil som to. Nenacita mi vsak nic. Testujem to zatial na domacom serveri, ktory bez pod Windowsom. Funguje aj tam root?
IP adresa servera je dajme tomu napriklad 192.168.1.1 a ak zadam //192.168.1.1/menu.php tak subor najde, ak vsak v php subore napisem toto <? include "root: /menu.php"; ?> tak nic neimportuje.

EDIT: Mne by nevadilo, aj keby vsade musim davat presnu cestu (ale len vratane daneho servera). Teda ak by to cez root fungovalo bolo by to fajn. Mohol by som si aj pridat premennu kde by som definoval roota takto $moj_root = "www.moja_domena.sk/" a do include by som pouzil toto <? include $moj_root."menu.php"; ?> . Problem je vsak ten. ze vzdy ked by som testoval stranky na mojom serveri doma, tak by som musel vsade zmenit tuto premennu a ked by som dal na webserver na internete, tak by som to musel zmenit znova. Neda sa teda nejak detekovat adresa kde to bezi? (s tym rootom by to bolo fajn, keby to funguje takto jak myslim).
inetMark
Profil
Skusal som nieco teraz.
ak napisem echo "http://$_SERVER[SERVER_ADDR]/menu.php";
tak vypise toto http://192.168.1.59/menu.php (co je OK)
ak tu cestu dam do prehliadaca nacita mi menu.

Ak vsak pouzijem include a napisem toto <? include "http://$_SERVER[SERVER_ADDR]/menu.php"; ?>
tak mi vypise toto
Warning: include(http://192.168.1.59/menu.php) [function.include]: failed to open stream: no suitable wrapper could be found in C:Program FilesxampphtdocsPHPsiteprimopdf.php on line 21

EDIT: A ako vyriesit problem s CSS stylom? Aj ked toto vyriesim, tak v CSS subore neviem definovat roota a teda mi asi neostava nic ine len CSS subor kopirovat do kazdeho adresara.
temistokles
Profil
inetMark
include_path si nastavíš na adresár niekde na disku, kde budeš vkladť všetky include-y. Potom sa nebudeš musieť starať o cestu k nim.
Alphard
Profil
<? include "root: /menu.php"; ?>
je špatně, pouze <?php include "/menu.php" ?>

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0