Sumpfkuh: HTML-Teil nur "ausführen", wenn embedded JavaScript-Bedingung erfüllt ist

Hi

Eine meine HTML-Dateien hat sinngemäß folgenden Aufbau:

<HTML>
<HEAD>
<TITLE>SiehMaEinaAn</TITLE>
<SCRIPT language="JavaScript">
if((document.referrer== ""))
  {window.location.href="http://irgendeineURL.de";}
</SCRIPT>
</HEAD>

<FRAMESET COLS="340,*" bordercolor=#000052>
...
</FRAMESET>
<BODY></BODY>
</HTML>

Mit dem Script oben will ich verhindern, daß die Seite direkt (z.B. als Bookmark) aufgerufen wird. Wenn also der Referrer leer ist, soll der Besucher auf eine andere URL geschickt werden. Das Problem ist: Der Browser schickt zwar den Besucher ggf. weg, allerdings wird die Seite während der Verbindungszeit angezeigt. Wenn die Verbindung aus irgendeinem Grunde nicht zustande kommt, bleibt der Besucher auf der Seite, die er eigentlich zwangsweise verlassen sollte. Wie kann ich also ggf. verhindern, daß der dem Script folgende HTML-Teil ausgeführt wird?
Danke für jede Hilfe.

  1. Hey,
    wie wäre es mit
    else
    {
       Automatische Weiterleitung auf die
       eigentliche Startseite
    }

    Gruss Frank

    1. Hey,
      wie wäre es mit
      else
      {
         Automatische Weiterleitung auf die
         eigentliche Startseite
      }

      Salve,

      geht leider nicht! Denn dann könnte der Besucher die eigentliche Startseite bookmarken und das Problem geht von vorn los.

      Bye
      SK

      1. geht leider nicht! Denn dann könnte der Besucher die eigentliche Startseite bookmarken und das Problem geht von vorn los.

        Hey,

        sehe ich anders, siehe SELFHTML replace()

        Bis bald

        Frank

  2. Hi,

    ich hab's zwar nie versucht, aber ich glaube es gibt da eine Methode (in Object location oder history oder so) um die Adresse zu ersetzten. (replace() ?).
    Dann würde man ab dem Zeitpunkt, in dem Man das Skript ausführt die neue Adresse in der Leiste sehen.

    Grüße
    fredy

    Hi

    Eine meine HTML-Dateien hat sinngemäß folgenden Aufbau:

    <HTML>
    <HEAD>
    <TITLE>SiehMaEinaAn</TITLE>
    <SCRIPT language="JavaScript">

    »»  if((document.referrer== ""))

    {window.location.href="http://irgendeineURL.de";}
    </SCRIPT>
    </HEAD>

    <FRAMESET COLS="340,*" bordercolor=#000052>
    ...
    </FRAMESET>
    <BODY></BODY>
    </HTML>

    Mit dem Script oben will ich verhindern, daß die Seite direkt (z.B. als Bookmark) aufgerufen wird. Wenn also der Referrer leer ist, soll der Besucher auf eine andere URL geschickt werden. Das Problem ist: Der Browser schickt zwar den Besucher ggf. weg, allerdings wird die Seite während der Verbindungszeit angezeigt. Wenn die Verbindung aus irgendeinem Grunde nicht zustande kommt, bleibt der Besucher auf der Seite, die er eigentlich zwangsweise verlassen sollte. Wie kann ich also ggf. verhindern, daß der dem Script folgende HTML-Teil ausgeführt wird?
    Danke für jede Hilfe.

    1. Hi,

      ich hab's zwar nie versucht, aber ich glaube es gibt da eine Methode (in Object location oder history oder so) um die Adresse zu ersetzten. (replace() ?).
      Dann würde man ab dem Zeitpunkt, in dem Man das Skript ausführt die neue Adresse in der Leiste sehen.

      Moin :)

      nee, nützt auch nix! Der Punkt ist: Der Browser liest nach dem Script-Bereich weiter und stellt brav den eigentlichen HTML-Teil dar, während die neue Adresse geladen oder angezeigt wird. Es geht bei der Sache nicht um die Verschleierung einer Adresse sondern letztlich darum, zu verhindern, daß der Besucher einer Passwort-geschützten Seite den Schutz umgeht, indem er direkt auf den geschützten Bereich zugreift.

      :(

      1. nee, nützt auch nix! Der Punkt ist: Der Browser liest nach dem Script-Bereich weiter und stellt brav den eigentlichen HTML-Teil dar, während die neue Adresse geladen oder angezeigt wird. Es geht bei der Sache nicht um die Verschleierung einer Adresse sondern letztlich darum, zu verhindern, daß der Besucher einer Passwort-geschützten Seite den Schutz umgeht, indem er direkt auf den geschützten Bereich zugreift.

        Nen wirklich gesicherten Bereich kannste via JavaScript
        eh nicht erreichen ,man kann es ja z.B. auch einfach
        abstellen.
        Sowas ist nur Serverseitig zu erreichen mit CGI , ASP
        oder so zu erreichen.

        gruss
        Jens