Wie kann ich in PHP einen Frame-Namen einfügen?

Hallo,

ich habe ein Fenster mit drei Frames (ich weiß, das ist depricated - arbeite ja schon dran). Oben eine Menüleiste über die ganze Breite, dann 20% und 80% zwei Frames drunter.

Ich möchte eine PHP-Funktion benutzen, damit ein link auf ein HTML-Dokument im 80%-Frame nicht alleine in einem Fenster geladen wird, sondern den gesamten frameset nachlädt.

Ich verwende im HTML folgenden PHP Code:

<?php $arg = $_SERVER['QUERY_STRING'];
if($arg == "") $arg = "start.html"; print ""; ?\> Alle HTML-Dateien, die in den betreffenden frame geladen werden sollen, liegen im Unterordner /html meines Servers. Als Ergebnis lädt der Browser alle frames bis auf den letzten, um den es ja geht. Der bleibt einfach weiß. Ich möchte an die links per ? einen query-string anhängen, der den entsprechenden frame lädt. Ich verwende PHP Version 4.4.8 Vielen Dank ponto499

Hallo ponto499,

ich kann leider nicht helfen, weil ich mich schon einige Jahre lang nicht mehr mit PHP beschäftige.

Grüße
Lora

Ich kann nicht weiterhelfen.

MfG Erior

Hallo ponto499,

Du verkünstelst Dich ja gründlich mit Deinen frames! Warum nimmst Du nicht eine html-css-Vorlage mit dem zweispaltigen Aufbau mit Header? Das ist definitiv wartungs-, code- und suchmaschinenfreundlicher und nicht mit viel Aufwand verbunden.

Ansonsten hat das mit PHP ziemlich wenig zu tun: Packe in Deinen Link mit dem Du den Inhalt aufrufen möchtest noch ein target dazu:
Linktext .

Viele Grüße und hoffe, geholfen zu haben,

remy

Hallo!

Wenn ich dich richtig verstanden habe benötigst du die Funktion eines „Frame-Brechers“, das müsstest du per Javascript einbinden, da PHP ja nur auf dem Server ausgeführt wird:
Auf dieser Seite hab ich ein Beispiel für einen Framebrecher gefunden: „http://mrfoo.de/archiv/14-Framebrecher-mit-Javascrip…“.

Alternativ kannst du dir auch ein Javascript-Code schreiben, der nach Bedarf auch die einzelnen Frames direkt anspricht und den entsprechenden Inhalt neu laden.

Ob es sich mit der „weißen Seite“ noch um ein Problem handelt, hab ich nicht ganz verstanden

Greets, ich

Hallo,

Ich möchte eine PHP-Funktion benutzen, damit ein link auf ein
HTML-Dokument im 80%-Frame nicht alleine in einem Fenster
geladen wird, sondern den gesamten frameset nachlädt.

Ich verwende im HTML folgenden PHP Code:

<?php : $arg = $_SERVER['QUERY_STRING'];
if($arg == "") $arg = "start.html"; print ""; ?\> Vielen Dank ponto499

Hallo ponto499!

Versuche es doch einfach mit einem Link, wobei du ein target angibst. In deinem Falle _top, dass das Frameset „zerstört“ und danach die ganze Seite ausfüllt. Beispiel:

Test

Falls du aber jeden Frame einzeln neu laden willst nutze doch JavaScript. Wie z.B. jQuery, dass relativ leicht zu bedienen ist. Es sollte aber auch mit normalen JavaScript funktionieren. In der Art: document. …

Habe ich das so richtig verstanden?

Viel Erfolg!

Gruß,
Matthias

Ich verwende im HTML folgenden PHP Code:

<?php : $arg = $_SERVER['QUERY_STRING'];
if($arg == "") $arg = "start.html"; print ""; ?\>

Hallo,
ein tipp ist, zu gucken wie dein script den quelltext generiert hat. Schau im browser mit „quelltext zeigen“ oä. ob dein argument da richtig argumentiert hat…

Da fehlt vielleicht ein escape vor anführungszeichen nach $arg und vorslash vor html je nach auf welcher verzeichnisebene dieser script liegt.
Also zb src="./html/$arg">";
Ausserdem würde ich bei src immer den vollen pfad rein schreiben damit unabhängig auf welcher maschine der script läuft.

Noch was: das Argument aus dem string trennen ist sauberer. Versuch mal was wie:

print „“;

Gruß Risto

ich hatte das so programmiert:

Im linken Framen (entspricht vermutlich Deinem
Frame mit 20 %) hatte ich die Links platziert.

Diese sahen so aus:

Funktionsbeschreibung

Durch den TARGET-Parameter wird der Frame bestimmt.
Den Frame hatte ich so definiert:

siehe auch:
http://members.chello.at/admin/manuals/selfhtml/tcic…