Autor Zpráva
matak
Profil
možná je to naprosto snadná věc nebo mi to nemyslí ale nevíte někdo jak na to?

potrebuji includovat soubor z rootu webu nezávisle na tom jaká je doména webu a umístění souboru do kterého chci includovat

pro upřesnění chci

1. includovat config.php
2. ze souboru adre1/are2/adre3/plugin/im/index.php
3. z tohoto také adre1/a2/index.php
4. potrebuji aby to bez uprav bezelo na domene www.domena1.cz www.domena2.cz

nevítě někdo?už nevím jak na to??
mila
Profil
Pokud spustíš první soubor něco jako /raid/www/f/foo/bar/baz/index.php tak on těžko zjistí, kde je vlastně ten root.
Může to být libovlný nadadresář.
Teoreticky by to šlo nějak zjišťovat z request uri (nápříklad pokud je to /bar/baz/index.php), tak to vypadá, že root je adresář foo. Je to ale velmi nespolehlivé, protože tám můžou být nějaká rewrite pravidla, případně může být root až bar, protože si celou aplikaci nahrál do jednoho adresáře (typicky při vývoji na localhostu).

Jesliže se první pustí soubor z rootu (třeba index.php, který pak includuje, co je žádáno), tak existuje jednoduché řešení. Dej do něj define('ROOT', dirname(__FILE__)); Pak můžeš všude použít konstantu ROOT.

Jinak tohle nemá nic společného s doménou. Je to o souborovém systému. Můžeš samozřejmě použít něco jako define ('ROOT', '/raid/www/f/foo'), ale to je hodně ošklivé řešení. To už je lepší používat include dirname(__FILE__) . '../.././../config/inc.php' Funguje to dobře, dokud soubor někam nepřesuneš.
matak
Profil
1. neslo mi o doménu ale právě o to přesunování, ten ROOT definovaný mám ale jde mi o plugin predstav si treba souborovy manazer proste je to plugin nezavisly na cemkoli jen spustis a je to takovy total commander, no a ja potrebuji aby sel spustit snadno z jakéhokoli webu, ale k tomu aby mohl fungovat mu potrebuji nadefinovat s kterymi adresari muze pracovat tedy napr konstanta pro adresar pro praci s obrazky nebo uploady souboru a to vse mam definovane v souboru config.php ktery je soucasti komplexniho systemu a je v rootu toho systemu a ja potrebuji aby plugin nasel root a naincludoval tento soubor kvuli zminenym konstantam

trochu sem premyslel a pokusil se pouzit include $_SERVER['DOCUMENT_ROOT']."/config.php";

snad je to spravne reseni

2. mi slo o css kdyz chci aby nacetlo obrazek z rootu zadam takto "/images/obr.jpg";
no ale problem je kdyz treba necham stranku ulozit "save as" v IE, tak absolutni cesty se mi neprepisi a obrazky se tedy nezobrazi...
Toto téma je uzamčeno. Odpověď nelze zaslat.

0