Nach Absenden neue Seite laden...

shockwaveXBG

Grünschnabel
Hallo,
ich verwende ein HTML Formular, das nach Absenden einerseits ueber die GET Methode die Variablen an eine bestimmte Adresse sendet, aber andererseits moechte ich, daß nach Betätigen des Absenden Buttons eine Bestätigungsseite geladen wird. Sowiet ist mir das Vorgehen klar, aber irgendwie wird die Bestätigungsseite nicht angezeigt. Die Daten werden aber übermittelt. wo liegt hier der Fehler? Danke im voraus!

PHP:
    <html>
    <head>
   <link rel="stylesheet" type="text/css" href="css/umfrage.css">
    <script type="text/javascript" language="JavaScript">
    <!--
    function neueSeite(){
    var timerID=setTimeout('window.location.href="bestaetigung.html"',3000);
    }
    //-->
    </script>
    </head>
    
    <body>
    
    <form name="xxx"  action="http://xxx" method="GET"  onSubmit="javascript:neueSeite();">
    
    <table border="0" width="260" celppading="0" cellspacing="0" border="0">
    
    <tr>
 <td colspan="4" class"">Wenn Sie mehr Informationen zum xxx wünschen, füllen Sie einfach das nachstehendes Formular aus und unser xxx Team wird sich umgehend mit Ihnen in Verbindung setzen.<br><br></td>
    </tr>
    
    <tr>
 <td bgcolor="#ffffff"><span class="small1">Anrede:&nbsp;</span></td><td><select name="anrede" class="sm">
    <option value="Herr">Herr</option>
    <option value="Frau">Frau</option>
    </select></td>
    <td bgcolor="#ffffff" colspan="2">&nbsp;</td>
    </tr>
    
    <tr>
 <td bgcolor="#ffffff"><span class="small1">Vorname:&nbsp;</span></td><td><input type="text" name="vorname" class="textfield"></td>
 <td bgcolor="#ffffff"><span class="small1">&nbsp;&nbsp;&nbsp;Name:&nbsp;</span></td><td><input type="text" name="nachname" class="textfield"></td>
    </tr>
    
    
    <tr>
 <td bgcolor="#ffffff"><span class="small1">Anschrift:&nbsp;</span></td><td><input type="text" name="strasse" class="textfield"></td>
 <td bgcolor="#ffffff"><span class="small1">&nbsp;&nbsp;&nbsp;PLZ:&nbsp;</span></td><td><input type="text" name="PLZ" class="textfield"></td>
    </tr>
    
    <tr>
 <td bgcolor="#ffffff"><span class="small1">Ort:&nbsp;</span></td><td><input type="text" name="ort" class="textfield"></td>
 <td bgcolor="#ffffff"><span class="small1">&nbsp;&nbsp;&nbsp;Land:&nbsp;</span></td><td><select name="land">
    <option value="">Bitte ausw&auml;hlen</option>
    <option value="DE">Deutschland</option>
    <option value="AT">&Ouml;sterreich</option>
    <option value="CH">Schweiz</option>
    </select></td>
    </tr>
    
    <tr>
 <td bgcolor="#ffffff"><span class="small1">E-Mail:&nbsp;</span></td><td><input type="text" name="email" class="textfield"></td>
 <td bgcolor="#ffffff"><span class="small1">&nbsp;&nbsp;&nbsp;Telefon:&nbsp;</span></td><td><input type="text" name="telefon" class="textfield">
    </td>
    </tr>
    <tr>
    <td colspan="4" bgcolor="#ffffff">&nbsp;</td>
    </tr>
    <tr>
 <td bgcolor="#ffffff" colspan="4"><div id="bt"><input type="submit" class="button" value="Abschicken">&nbsp;&nbsp;<input type="reset" class="button" value="Zur&uuml;cksetzen"></div></td>
    </tr>
    <tr>
    <td colspan="4" bgcolor="#ffffff">&nbsp;</td>
    </tr>
    </table>
    </form>
    </body>
    </html>
 
Zuletzt bearbeitet:
Problem: Der Browser läd deine "http://xxx?ANGEHÄNGTE DATEN" die du bei Action angegeben hast, bevor der onsubmit-Event ausgeführt wird.

Lösung: Du gibst deine Bestätigung Serverseitig per "http://xxx" aus.
 
Danke fuer die schnelle Antwort. Das Problem ist, daß die Daten die übermittelt werden an eine vorgegebene Url geschickt werden müssen und die Daten somit nicht auf unserem Server gespeichert werden.
 
Das ist natürlich ein Problem.
Spontan so ohne nachdenken würde ich mal sagen, man könnte das Formular in ein Frame packen, einen Button in ein anderes und dann über diesen Button per Javascript eine Funktion aufrufen. Diese Funktion schickt zum einen das Formular ab, zu anderen läd sie per location.href die bestädigungsseite in den Frame. Es geht aber sicher noch eleganter.
 
Wie gesagt, geht sicher noch eleganter, ich weiß nur nicht wie. Beschäftige mich noch nicht so lange mit JavaScript. Bin mal gespannt, was die anderen dazu sagen.
 
Man könnte eigentlich auf javascript verzichten und stattdessen eine PHP seite aufrufen, die die Variablen aufbereitet und über einen IMAGE tag die Werte als SRC angegeben hat und als URL die Variablen übergibt...also im Sinne von:

PHP:
 <?
 //variablenaufbereitung
 
 $anrede=$HTTP_GET_VARS['anrede'];
 $vorname=$HTTP_GET_VARS['vorname'];
 $nachname=$HTTP_GET_VARS['nachname'];
 $strasse=$HTTP_GET_VARS['strasse'];
 $plz=$HTTP_GET_VARS['plz'];
 $ort=$HTTP_GET_VARS['ort'];
 $land=$HTTP_GET_VARS['land'];
 $email=$HTTP_GET_VARS['email'];
 $telefon=$HTTP_GET_VARS['telefon'];
 $cid=$HTTP_GET_VARS['cid'];
 
 print "<img src='xxx?cid=$cid&name=$nachname&vorname=$vorname&tel=$telefon&strasse=$strasse&plz=$plz&anrede=$anrede&ort=$ort&land=$land&email=$email' width=1 height=1 border=0>";
 
 print "Vielen Dank, Ihre Anmeldedaten wurden übermittelt.<br><br>Sollten Sie weitere Fragen haben, wenden Sie sich bitte an unser Service Team.";
 ?>


es funktioniert auf diese Weise auf jeden Fall und vielleicht hilft es ja jemandem weiter!
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück