Autor | Zpráva | ||
---|---|---|---|
zdendaking Profil * |
#1 · Zasláno: 6. 2. 2013, 18:39:04 · Upravil/a: zdendaking
Mám dynamický web v PHP a nastala potřeba rozšíření pro podadresáře.
struktura je jednoduchá v root adresáři "aplikace" aplikace/index.php aplikace/podadresar-1/index.php aplikace/podadresar-2/index.php Na podadresáře se odkazuji: <a href="./podadresar-1">p1</a> <a href="./podadresar-2">p2</a> A pokud se chci vrátit ( přes root/podadresar-1/menu.php ) tak tam mam: <a href=<?php echo("/index.php");?>main</a]http://$_SERVER[HTTP_HOST]/index.php");?>main</a> mimochodem tohle mi nefunguje na localhostu, což dobře nechápu, protože MS, Opera to skousnou, ale Netscape, Chrome, Safari ne a s následujícím odkazem to je naopak u nahrané stránky na webu. <a href=<?php echo("/aplikace");?>main</a]http://$_SERVER[HTTP_HOST]/aplikace");?>main</a> To bych pominul, lze si pro ladění na lokálu nastavit jinou variantu URL než na serveru, ale potřeboval bych radu jak se odkazovat zpětně z dalšího level úrovně III. na úroveň II. aplikace/podadresar-2/podadresar-3/index.php návrat do aplikace/podadresar-2/index.php Googlil jsem, prolezl jsem i dostupné manuály a odkazy na téhle konferenci, ale všude se končí v rootu nebo nejvýše v II. úrovni. Ten localhost bude asi v blbém nastavení, ale nejsem na takové úrovni, abych to mohl řešit, spíš si ty adresy ve skriptech na lokále přepíšu na to, co tam funguje. Pokud by měl někdo radu nebo na nějaký dobře utajený web k dané problematice, tak se mi fakt uleví. Zdeněk Drobná oprava, už mi z toho asi hrabe <a href=<?php echo("/index.php");?>main</a]http://$_SERVER[HTTP_HOST]/index.php");?>main</a> <a href=<?php echo("/aplikace");?>main</a]http://$_SERVER[HTTP_HOST]/aplikace");?>main</a> Zdeněk Tak nevím, už asi ani neumím psát, ale kde se tam bere ten blábol za echo nevím, protože echo píši do kódu s echo("http:.......... a tady si to napsalo co chce. Zdeněk |
||
Joker Profil |
#2 · Zasláno: 6. 2. 2013, 19:06:47
zdendaking:
Jestli jsem to správně pochopil, dotaz se PHP netýká a předmětem je prostě to, jak odkázat o úroveň výš. Na nadřazený adresář se v souborových systémech prakticky univerzálně odkazuje dvěma tečkami. Čili když chci například ze souboru (web)/adresar/podadresar/index.html odkázat na (web)/adresar/foo/bar.html , můžu napsat:
<a href="../foo/bar.html"> <a href="/adresar/foo/bar.html"> |
||
zdendaking Profil * |
#3 · Zasláno: 6. 2. 2013, 20:58:06
Vstoupilo světlo do jeskyně nevidomého. Prostě jsem to překódil a zamotal se v echo výpisu adres, protože $_SERVER[HTTP_HOST] je tam zbytečně. Je zajímavé, že na tuhle strategii s obecnou detekcí přes PHP konstanty, jsem se již setkal v několika tutoriálech. Dík za nakopnutí. Zdeněk
|
||
Joker Profil |
#4 · Zasláno: 7. 2. 2013, 10:17:02
zdendaking:
„Je zajímavé, že na tuhle strategii s obecnou detekcí přes PHP konstanty, jsem se již setkal v několika tutoriálech.“ To se může v některých případech hodit, ale zrovna HTTP_HOST, tj. hlavička posílaná z klienta, která ani nemusí být vyplněná, mi na to nepřijde ideální. |
||
Časová prodleva: 11 let
|
0