molily: Frames

Beitrag lesen

Hallo, Manser,

Also folgendes: Ich arbeite gerade an einer Webaplication unter .Net. Wie schaffe ich es, dass nach dem sich ein Benutzer angemeldet hat, dessen Name im Navigations-frame angezeigt wird???!!
(Die Eingabe des Benutzernamens erfolgt in einem anderen Frame)
Ich kann den Namen zwar dort einfügen, jedoch geht dann der ursprüngliche Inhalt des Frames verloren...was nicht in meinem Sinne ist. Der Name sollte eigentlich nur hinzugefügt werden.

Mir würde Folgendes einfallen:
Ich denke mal, du arbeitest mit Sessions und Übermittlung der Session-ID über GET oder Cookies, deshalb wäre es relativ einfach, nach dem Einloggen die Session-ID an die Unterframes weiterzugeben.

Eine Möglichkeit wäre, nach dem Einloggen im Navigationsframe mit JavaScript eine neue Seite zu laden, bspw.
  top.[framename].location.href="...?sid="<?php echo($session_id); ?>";
(Beispiel verwendet GET-Übermittlung und PHP, hier kannst du natürlich jede andere Sprache verwenden, mit ASP kenne ich mich nicht aus, die processing instructions dürften ähnlich sein.)
Dies hat jedoch den Nachteil, dass der Benutzer ohne JavaScript aufgeschmissen ist. Überhaupt solltest du überdenken, ob es klug ist, überhaupt Frames zu verwenden, weil Frames und Sessions sich nur schwer vereinbaren lassen.

Die zweite Möglichkeit wäre, dass du das Login-Formular so modifizierst, dass es eine Seite lädt, welche eine Frameset aufbaut:
  <form name="login" action="frameset.php" target="_top" ...>
Über das Frameset könntest du die Session-IDs an die Frames "verteilen", oder einfach die Seiten neuladen, sodass sie die SID aus dem Cookie lesen können und personalisiert werden können.

Nur einige Vorschläge, ich bin mir nicht sicher, ob ich deine Frage damit beantwortet habe.

Grüße,
Mathias