Deep Links mit PHP abfangen

Yakima

Registered User
Moin,

ich habe mir was ausgetüftelt um deep-links, die bei einer Seite mit Frames das Menü ja bekannterweise nicht mit laden abzufangen, das Menü zu laden und trotzdem den deep-link ans Ziel zu führen ...
So 100% gefällt mir das aber noch nicht, da ein Teil davon aus Java-Script besteht den ja nicht jeder eingeschaltet hat - hat da vielleicht jemand ne Idee wie das nur mit PHP zu lösen wäre ?

meine Idee :

in den Unterseiten folgenden Script, der prüft wie das Top-Dokument heisst und beim falschen Namen das Frameset mit dem eigenen refferer als Parameter aufruft :

PHP:
<script language="JavaScript">
<!--
if (top.document.title != "Ersatzcowboy.de") top.location="../index.php?open=" + window.location.href ;
//-->
</script>


im Frameset dann die Auswertung ds Parameters - wenn kein Parameter angegeben dann normale Startseite, ansonsten die Seite, von der aus dieses Dokument aufgerufen wurde laden :

PHP:
<?php
if ($open == "") { $open = "start.htm";}
Print "<iframe src=\"$open\" name=\"rechts\" style=\"position:absolute; left:120px; top:0px; width:85%; height:100%; z-index:1\" > </iframe> "
?>
 

Huschi

Moderator
Staff member
Nette Idee.

Folgendes fällt mir auf:
a) Du benutzt den Begriff 'Refferrer' in einen falschen Zusammenhang. Das hat mich erstmal stutzig gemacht.
b) Du stützt Dich nur auf JavaScript (hast Du ja selbst erkannt). Du könntes zusätzlich den HTTP-Refferrer in PHP auswerten. (Aber nicht darauf verlassen, da moderne Browser auch den ausschalten können.)
c) Du prüfst anhand von top.title ob Du im Frameset bist. Evtl. würde es schon reichen, zu prüfen, ob ein parent-frame existiert, bzw. parent.location Deine Domain enthält.
So mußt Du nicht alles umschreiben, wenn Du doch mal den Seitentitel ändern willst.

huschi.
 

Yakima

Registered User
.. das mit dem parent Frame stimmt wohl - allerdings könnte meine Seite (oder der Teil davon) dann immer noch in einem fremden Frameset gefangen werden, oder ?


Servus,
Martin
 

Huschi

Moderator
Staff member
Original geschrieben von Yakima
allerdings könnte meine Seite (oder der Teil davon) dann immer noch in einem fremden Frameset gefangen werden, oder ?
Mach die selbe Abfrage ebenso bei der Frameset-Definition.

huschi.
 
Top