Autor | Zpráva | ||
---|---|---|---|
beorn Profil |
#1 · Zasláno: 17. 5. 2009, 11:06:26
Ahoj,
do stránek chci vložit menu pomocí iframe. A uvnitř tohoto vloženého menu bych chtěl pomocí php zjistit konec url nadřazené stránky ve které se zrovna nacházím. Když napíšu klasicky echo basename($_SERVER['SCRIPT_FILENAME']); vypíše mi to název souboru vloženého pomocí iframe. Jak to udělat, aby mi to vypsalo název stránky (souboru) do které ho vkládám? Díky |
||
Chazzy Profil * |
#2 · Zasláno: 17. 5. 2009, 11:23:15
pokud tě chápu dobře, zkus prostě předávat názvy stránky přes HTTP_GET_VARS.
|
||
AM_ Profil |
#3 · Zasláno: 17. 5. 2009, 11:49:51
Chazzy
HTTP_GET_VARS je pravěká alternativa k _GET, ale principielně máš pravdu beorn přímo to pomocí PHP nelze, protože prohlížeč si stránku v iframe vyžádá separátně a tak server tuto souvislost nezná (takže pokud to míníš jako zabezpečení proti inkluzi jinam, tak to ani nejde - útočník to může vždycky podvrhnout, pak bys musel upustit od iframe a normálně menu includovat). Pokud to ale chceš k čemukoliv jinému, mělo by to jít zjistit v iframe pomocí javascriptu (myslímže window.top.location) nebo jak říká Chazzy to stránce předávat v URI (tedy menu.php?parent=uvod) |
||
beorn Profil |
#4 · Zasláno: 17. 5. 2009, 12:06:33
AM_, Chazzy
Jo, díky za rychlou odpověď. Předávání rodičovské stránky parametrem v url jsem se právě chtěl vyhnout. Říkal jsem si, že by to mělo jít nějak jednodušeji. Vyzkouším, co mi půjde nejlíp. |
||
beorn Profil |
#5 · Zasláno: 17. 5. 2009, 12:24:23
Tak jo. Když soubor menu.php vložím pomocí include a ne iframe, tak funkce echo basename($_SERVER['SCRIPT_FILENAME']); mi vypíše název souboru rodičovské stránky a ne té vložené. Supr :-)
|
||
AM_ Profil |
#6 · Zasláno: 17. 5. 2009, 12:46:43
Jen pak pozor na jednu věc, iframe je vlastně samostatný dokument, takže by měl mít náležitosti jako hlavičku, <body> atd, kdežto při inkluzi se kód stane součástí jednoho dokumentu, takže už tam nic takového nepatří :) prohížeče si s tím obvykle poradí, ale není dobrá vizitka kodéra, když mu v půlce stránky začíná nový <html> element.
|
||
Časová prodleva: 15 let
|
0