floater: Frameset komplett neu laden....

Hallo,

ich habe eine Seite bestehend aus einem Frameset (3 Rows).
Die erste und die dritte Row enthalten eine Navigation.
Die zweite den Inhalt.

(Bitte keine Bemerkungen über Framesets, ich bin ebenso dagegen, aber es war so von "der höheren Macht" gewollt!)

Ich habe ein Login-Formular hinzugefügt.
Nach erfolgreichem Login müssen die erste und die zweite Row neu geladen werden, da dann zusätzliche Menüpunkte verfügbar sein sollen.

Das ganze habe ich mit Javascript gelöst, was eigentlich kein Problem ist, da JavaScript Vorraussetzung für die Funktionalität ist.

Mich interessiert nun, ob es eine andere Möglichkeit gibt ein Frameset komplett neu zu laden anstatt mit JavaScript, nämlich mit PHP.

Im Hinterkopf habe ich da so etwas wie die header()-Funktion....

Gibt es so eine Möglichkeit überhaupt?

Gruß,
Floater

  1. Seid gegrüßt!

    ...sehr umständlich aber geht:
    Du baust dir einfach zwei Framesets, eines mit dem oberen und mittlerem Frame und eines mit dem eben genannten Frameset und dem unteren Frame und als Link-Target gibst du einfach das obere Frameset an, dass dann natürlich die beiden anderen Frames nachladen muss.

    --
    Bis Später
    RuD
    ________________________________________________________________
    SelfCode: ie:% fl:( br:^ va:) ls:< fo:| rl:( n4:& ss:) de:> js:| ch:| mo:| zu:)
    1. Hallo,

      Du baust dir einfach zwei Framesets, eines mit dem oberen und mittlerem Frame und eines mit dem eben genannten Frameset und dem unteren Frame und als Link-Target gibst du einfach das obere Frameset an, dass dann natürlich die beiden anderen Frames nachladen muss.

      Nein, diese Lösung auf keinen Fall.
      Ich finde diese Lösung erstens nicht elegant, zweitens möchte ich unter keinen Umständen noch ein Frameset einbauen.

      Gruß,
      Floater

      1. hi,

        Du baust dir einfach zwei Framesets, eines mit dem oberen und mittlerem Frame und eines mit dem eben genannten Frameset und dem unteren Frame und als Link-Target gibst du einfach das obere Frameset an, dass dann natürlich die beiden anderen Frames nachladen muss.

        Nein, diese Lösung auf keinen Fall.
        Ich finde diese Lösung erstens nicht elegant,

        Erinnere dich ... du arbeitest derzeit schon mit Frames, und Javascript ist ebenfalls erforderlich - also wozu noch über "Eleganz" sinnieren?

        zweitens möchte ich unter keinen Umständen noch ein Frameset einbauen.

        Dann ersetze das Frameset komplett, in dem du vom Login-Formular aus auf _top zielst. Welche Seiten dann in den einzelnen Frames anzuzeigen sind, kannst du ja servereitig steuern.

        gruß,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }
        1. Hallo,

          Erinnere dich ... du arbeitest derzeit schon mit Frames, und Javascript ist ebenfalls erforderlich - also wozu noch über "Eleganz" sinnieren?

          Ok, aber dann wäre es für mich noch uneleganter.

          Dann ersetze das Frameset komplett, in dem du vom Login-Formular aus auf _top zielst. Welche Seiten dann in den einzelnen Frames anzuzeigen sind, kannst du ja servereitig steuern.

          Jau, das ist die Lösung. Ich hatte gar nicht daran gedacht, dass ich im form-Tag ja auch ein target setzen kann.
          Danke!!!

          gruß,
          wahsaga

          Gruß,
          Floater

  2. echo $begrüßung;

    Mich interessiert nun, ob es eine andere Möglichkeit gibt ein Frameset komplett neu zu laden anstatt mit JavaScript, nämlich mit PHP.

    Anforderungen kommen vom Browser, sowohl die Frameset-Seite als auch die Frames. Von PHP aus kannst du nicht beeinflussen, in welchen Frame die angeforderte Ressource geladen wird. Das muss der Client bereits zum Zeitpunkt seiner Requestauslösung wissen.

    Im Hinterkopf habe ich da so etwas wie die header()-Funktion....

    header() und der damit modifizierbare HTTP-Header kennt keine Möglichkeit, ein target anzugeben. Die Frames-Geschichte ist etwas, das in HTML implementiert ist, nicht im HTTP. Eine Lösung muss also im HTML-Umfeld zu finden sein.

    echo "$verabschiedung $name";