php -> sessie wordt gestart
javascript -> declareer een variabele genaamd htmlOutput
javascript/php -> stop alle dynamisch gegenereerde html content (dus de complete pagina) in deze variabele.
javascript -> document.write(htmlOutput);
ik gebruik dit om bovenstaande pagina op te vragen vanaf een andere server.
probleem: werkt prima, maar
php wordt gecompileerd met de -enable-trans-id optie waardoor de session ID automatisch aan elke relatieve link wordt meegegeven en binnen elk form wordt een hidden element met daarin de session ID toegevoegd. dat hidden element bevat natuurlijk dubbelle dubbele quotjes (") , waardoor er in in de javascript string dus het volgende ontstaat en ik vanzelfsprekend geen output in me browser te zien krijg:
bij refreshen is het probleem opgelost, want de session id is opgeslagen in een cookie en wordt niet meer automatisch toegevoegd.
logische 'dirty' oplossing is natuurlijk bovenin de pagina kijken of de sessie reeds bestaat, zo niet: de pagina herladen zodat de sessie wel bestaat.
Als je de betreffende pagina direct opvraagt via de url, dan refresht hij netjes en gaat alles goed.
Echter, de bedoeling van het concept is dat de pagina binnen een andere pagina extern wordt aangeroepen:
en dan blijkt de refresh niet te werken (logisch....)
ok nog even ter extra verduidelijking: het concept
------------------- http://www.domein.com/externalHeader.php ------------------
********** pagina inhoud hier **********
------------------- http://www.domein.com/externalHeader.php ------------------
iemand enig idee hoe ik dit probleem moet oplossen?
-enable-trans-id uitschakelen is geen optie, want dat gaat de hosting partij vast niet voor mij doen.
javascript -> declareer een variabele genaamd htmlOutput
javascript/php -> stop alle dynamisch gegenereerde html content (dus de complete pagina) in deze variabele.
javascript -> document.write(htmlOutput);
ik gebruik dit om bovenstaande pagina op te vragen vanaf een andere server.
probleem: werkt prima, maar
php wordt gecompileerd met de -enable-trans-id optie waardoor de session ID automatisch aan elke relatieve link wordt meegegeven en binnen elk form wordt een hidden element met daarin de session ID toegevoegd. dat hidden element bevat natuurlijk dubbelle dubbele quotjes (") , waardoor er in in de javascript string dus het volgende ontstaat en ik vanzelfsprekend geen output in me browser te zien krijg:
code:
1
2
3
| htmlOutput += "<form name='login' method='post' action='http://www.domein/login.php?'> <input type="hidden" name="PHPSESSID" value="05f28c72c94fbb714f668e80d0ef9497" />"; |
bij refreshen is het probleem opgelost, want de session id is opgeslagen in een cookie en wordt niet meer automatisch toegevoegd.
logische 'dirty' oplossing is natuurlijk bovenin de pagina kijken of de sessie reeds bestaat, zo niet: de pagina herladen zodat de sessie wel bestaat.
Als je de betreffende pagina direct opvraagt via de url, dan refresht hij netjes en gaat alles goed.
Echter, de bedoeling van het concept is dat de pagina binnen een andere pagina extern wordt aangeroepen:
code:
1
| <script language="javascript" src="http://www.domein.com/externalHeader.php"> |
en dan blijkt de refresh niet te werken (logisch....)
ok nog even ter extra verduidelijking: het concept
------------------- http://www.domein.com/externalHeader.php ------------------
********** pagina inhoud hier **********
------------------- http://www.domein.com/externalHeader.php ------------------
iemand enig idee hoe ik dit probleem moet oplossen?
-enable-trans-id uitschakelen is geen optie, want dat gaat de hosting partij vast niet voor mij doen.
[ Voor 15% gewijzigd door Verwijderd op 23-01-2003 20:07 ]