leftjustified: Post-Daten an ein Iframe weiterleiten

Hallo!

Ich sitze jetzt schon eine Weile an einem Problem:

Ich habe eine Seite: Seite1.php, in der ein Formular drinn steckt, die diverse Hidden-Field Daten aufnimmt und auch eine Selectbox für die Auswahl einer Zahlungsmethode (Kreditkarte/Giropay/etc).

Diese Daten muss ich an einen externen Server schicken (Online-Zahlungsanbieter) und zwar per POST-Methode. Wenn ich die Daten direkt an diese Seite (nennen wir sie zB. http://www.xz.com/pay) schicke, dann klappt alles wie gewünscht. Jetzt will ich diese Seite aber als Ifram einbinden, damit mein Design erhalten bleibt.

Folgendes habe ich gemacht, es funktioniert allerdings nicht:

Seite1.php

  
<form action="seite2.php" method="post" name="form" target="paymentframe">  
...  
</form>  

Seite2.php

  
<iframe name="paymentframe" src="http://www.xz.com/pay" width="99%" height="400">  
</iframe>  

Das Problem ist jetzt, dass wenn ich auf Seite1 das Formular abschicke, aus mir nicht ganz verständlichen Gründen, ein neue Tab aufgeht (sollte aber der selbe Tab/Fenster sein) und die Daten kommen nicht auf http://www.xz.com/pay. Wenn ich auf Seite2 die Post-Daten ausgebe (per print_r($_POST);), dann sehe ich alle Daten.

Hat jemand eine Idee? Was mache ich falsch?

mfg

  1. Mahlzeit leftjustified,

    Folgendes habe ich gemacht, es funktioniert allerdings nicht:

    "Funktioniert nicht" funktioniert nicht.

    Seite1.php
    <form action="seite2.php" method="post" name="form" target="paymentframe">

    Befindet sich in "Seite1.php" (bzw. deren HTML-Output) ein (I)Frame mit dem Namen "paymentframe"? Nein? Wie sollte "seite2.php" dann in diesem (I)Frame geöffnet werden?

    Seite2.php
    <iframe name="paymentframe" src="http://www.xz.com/pay" width="99%" height="400">
    </iframe>

    Du weißt, dass Du mit diesem HTML-Code den Browser des Benutzers dazu bringst, einen IFrame zu zeichnen, die genannte Ressource vollkommen unabhängig von Deinem Skript und allem anderen von "xz.com" anzufordern (interessant übrigens, dass ein "Suchanbieter" Zahlungen abwickelt - vielleicht hättest Du sinnvollerweise eher eine der üblichen Beispiel-Domains benutzt?!) und dann in dem IFrame darzustellen?

    Das Problem ist jetzt, dass wenn ich auf Seite1 das Formular abschicke, aus mir nicht ganz verständlichen Gründen, ein neue Tab aufgeht (sollte aber der selbe Tab/Fenster sein) und die Daten kommen nicht auf http://www.xz.com/pay.

    Works as designed. Wenn in "Seite1.php" (noch) kein (I)Frame mit dem Namen "paymentframe" vorhanden ist und auch sonst kein Fenster diesen Namen trägt, wird eben ein neues Fenster geöffnet (in neueren Browsern gern in einem Tab), diesem der genannte Name verpasst und dann dort die im Formular genannte Ressource geladen.

    Wenn ich auf Seite2 die Post-Daten ausgebe (per print_r($_POST);), dann sehe ich alle Daten.

    Works as designed. Wie kommst Du auf die Idee, dass diese Daten dann - vielleicht auf magische Weise - ihren Weg zum Zahlungsanbieter finden?

    Hat jemand eine Idee? Was mache ich falsch?

    Dir fehlt das grundlegende Verständnis in bezug auf http://de.selfhtml.org/html/frames/index.htm@title=Frames.

    MfG,
    EKKi

    --
    sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|