PHP ver gevorderde |
|
Hoe kan ik met javascript (het liefst met php, maar ik weet bijna zeker dat dat niet mogelijk is) de locatie van de pagina met de frame achterhalen.
Dus stel ik heb twee verschillende domeinen.
www.domein1.nl en www.domein2.nl
op domein1 heb ik een pagina met daarin een frame met daarin een pagina van domein2. Dus zoals hieronder
// pagina op domein1
<frame src="www.domein2.nl/pagina.php" noresize="noresize" name="frame" />
// pagina op domein1 <frame src="www.domein2.nl/pagina.php" noresize="noresize" name="frame" />
Hoe kan ik dan met www.domein2.nl/pagina.php uitlezen dat het domein van de pagina met de frame erin www.domein1.nl is? Zou vast niet al te moeilijk zijn, maar ben niet zo thuis in javascript.
==========
OPGELOST
==========
Ik heb de reden gevonden waarom hij het niet deed op dit forum:
http://www.codingforums.com/showthread.php?t=15057
De topicstarter had precies hetzelfde probleem als ik en heeft ook toevallig precies hetzelfde geprobeerd als ik ook had gedaan. Het blijkt een beveiliging te zijn die ervoor zorgt dat wat ik wou doen niet mogelijk was (tenminste niet op mijn manier).
Voor de mensen die hetzelfde probleem hebben:
ik gebruik dit voor de pagina met de frame
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>
Frames
</title>
<meta http-equiv="content-type" content="application/xhtml+xml; charset=iso-8859-1" />
<meta name="robots" content="index, follow" />
<meta name="revisit-after" content="1 day" />
<meta name="language" content="Dutch" />
<script type="text/javascript">
window.onload = function()
{
document.getElementById('frame').src = 'http://grayen.gr.funpic.de/frames/frame.php?site=' + window.location;
}
</script>
</head>
<frameset>
<noframes>
<body>
<p>Uw browser ondersteund geen frames, probeer uw huidige browser up te daten of over te stappen naar een andere browser.</p>
</body>
</noframes>
<frame src="" noresize="noresize" id="frame" name="frame" />
</frameset>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title> Frames </title> <meta http-equiv="content-type" content="application/xhtml+xml; charset=iso-8859-1" /> <meta name="robots" content="index, follow" /> <meta name="revisit-after" content="1 day" /> <meta name="language" content="Dutch" /> <script type="text/javascript"> window.onload = function() { document.getElementById('frame').src = 'http://grayen.gr.funpic.de/frames/frame.php?site=' + window.location; } </script> </head> <frameset> <noframes> <body> <p>Uw browser ondersteund geen frames, probeer uw huidige browser up te daten of over te stappen naar een andere browser.</p> </body> </noframes> <frame src="" noresize="noresize" id="frame" name="frame" /> </frameset> </html>
En dit voor de pagina die in de frame zit
<?php
if(isset($_GET['site']))
{
echo $_GET['site'];
}
?>
PS: ik gebruik alleen frames, omdat ik een site moet maken op een host die geen php ondersteund, en doordat ik gebruik maak van een frame kan ik dit toch doen, maar ik wil ervoor zorgen dat alleen die bepaalde site mijn site in een frame mag zetten, vandaar dat ik de url nodig had.
|