PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Variablenwerte in Framedatei eines Framesets


Chevy
11.04.2004, 01:39:41
Folgendes Problem. Ich möchte die Werte von Variablen (nicht nur Formularvariablen) an eine .PHP Datei schicken und im Browser anzeigen. Die Datei ist allerdings ein Frame eines Framesets.
Beispiel: Frameset Datei heisst Rahmen.php die Frames heissen Oben.php bzw. Unten.php. Ich möchte die Daten in Unten.php anzeigen lassen. Ist ja kein Problem, wenn ich sie mit der Post Methode "action = Unten.php" abschicke, landen sie in Unten.php. Das Problem ist nur das im Browser nicht das Frameset zu sehen ist, sondern nur Unten.php.
Gebe ich "action=Rahmen.php" ein, dann ist das Frameset zu sehen, aber Unten.php hat keine Werte erhalten.
Hat jemand eine Idee, wie man mit einem Click das Frameset startet und die Variablenwerte in die Frame Datei bekommt.

bweichel
13.04.2004, 20:29:20
Hi,

du mußt den Framename angeben. Das geht mit parent in JavaScript.

Zum Beispiel:

<a href="javascript:parent.frame_name.location = 'unten.php?var=$wert';">Link</a>

Chevy
14.04.2004, 13:57:25
Hallo und Danke, hab vielleicht vergessen zu schreiben, dass die Daten per submit-button weitergeleitet werden sollen. Java-Script funktioniert ausserdem solange, wie es nicht deaktiviert ist. Ich hab versucht ohne JavaScipt über zwei unterschiedliche Wege das Problem zu lösen.
1.In der Framesetdefinition der Frameset-Datei in den unteren Rahmen mit
<frame src="unten.php?xy=$variable" name="mainFrame">
die Variablenwerte in die untere Rahmen-Datei (main) also unten.php zu kriegen. Vorher erhält die Frameset-Datei die Daten aus der Formular-Datei, die nicht zum Frameset gehört. Allerdings gibt die Frameset-Datei nur die Bezeichnung '$variable' weiter und nicht ihren Wert.

2.Die direkte Variablenübergabe an die unten.php über folgenden Aufruf aus der Formulardatei
<FORM METHOD="POST" ACTION="Framesetdatei.php" TARGET="main"> klappt deshalb nicht, weil die Framesetdatei aufgerufen wird, und unten.php die Variablen erst gar nicht erhält.
Tausche ich die Bezeichnung 'Framesetdatei.php' durch 'unten.php' landen die Werte in unten.php aber der Frameset wird nicht gestartet.

feuervogel
14.04.2004, 13:59:37
vielleicht merkst du grade, warum frames und php sich nicht vertragen und warum möglichst darauf verzichtet werden sollte!

lindic
14.04.2004, 15:08:05
Original geschrieben von Chevy
1.In der Framesetdefinition der Frameset-Datei in den unteren Rahmen mit
<frame src="unten.php?xy=$variable" name="mainFrame">
2.Die direkte Variablenübergabe an die unten.php über folgenden Aufruf aus der Formulardatei
<FORM METHOD="POST" ACTION="Framesetdatei.php" TARGET="main"> klappt deshalb nicht, weil die Framesetdatei aufgerufen wird, und unten.php die Variablen erst gar nicht erhält.


Ich hab mir jetzt nicht alles angesehen, aber wenn du einem Frame den Namen 'mainFrame' gibst, musst du natürlich im FORM-Befehl als TARGET auch 'mainFrame' angeben.

Probiers mal...

... oder befolge Feuervogels Rat, auf Frames zu verzichten. ;-)