Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Problém s relatívnymi cestami v PHP pri include

Mám súbor index.php v adresári /abc/ na serveri. V adresári /abc/def/ mám tiež index.php. Z obidvoch týchto index.php pomocou príkazu include volám súbor main.php. V súbore main.php sa odvolávam na ďalší súbor main0.php, ktorý je v inom adresári ako je main.php. Problém spočíva v tom, že nemôžem použiť relatívne cesty v súbore main.php, pretože to bude fungovať z /abc/index.php, ale nie z /abc/def/index.php alebo naopak. Súbory sa nesmú nachádzať inde ako sú umiestnené. Ako upraviť main.php, aby bol prenositeľný celý obsah servera na iný server? Čiže nesmie sa použiť cesta ako localhost a podobne, lebo z internetového servera by to už nebežalo.

Předmět Autor Datum
Moc jsem to nepochopil, ale snad ti pomůže, že nejdřív se hledá v adresáři s prováděným skriptem, až…
angel333 15.08.2007 18:55
angel333
Toto je tak triviální, že to vím i já. Klíčem jsou relativní cesty. Tzn. nezapisuješ/nepoužíváš úpln…
Flash_Gordon 15.08.2007 19:15
Flash_Gordon
já to pochopil tak, že includuje do includovaného a ten druhý includovaný je v jiném adresáři tedy n…
Kráťa 15.08.2007 20:45
Kráťa
Pochopil jsem, že má takouvouto adresářovou strukturu: abc +-> index.php +-> main.php +-> def +-> i…
angel333 15.08.2007 21:03
angel333
Pre inkludovanie ďalších súborov z main.php môžeš použiť absolútnu cestu, ktorú si môžeš vytvoriť za…
los 16.08.2007 09:13
los
Už jsme tě vyhlíželi :-) poslední
angel333 16.08.2007 13:24
angel333

Toto je tak triviální, že to vím i já.
Klíčem jsou relativní cesty.
Tzn. nezapisuješ/nepoužíváš úplnou cestu, ale relativní.
Například říkáš: V adresáři o jednu úroveň zpět je ten a ten konkrétní soubor v tom a tom adresáři:

INCLUDE "../IncludeSoubory/knihovna.php";

Eh.. nebo to není to co myslíš ?

já to pochopil tak, že includuje do includovaného a ten druhý includovaný je v jiném adresáři tedy např.

<body>
<?php include "main.php"; (a v main.php se includuje neco.php) ?>
</body>

co to includovat po jednom do toho prvního?

<body>
<?php
include "main.php";
include "neco.php";
?>
</body>

Zpět do poradny Odpovědět na původní otázku Nahoru