Weiterleitung nach Form Absendung

Setzch

Mitglied
Guten Morgen zusammen,

ich habe ein kleines Problem mit der Weiterleitung nach einer Formularabsendung.
Ich hätte gerne, dass der User der das Form abgesendet hat ein kleines Window wie ne Systemmeldung bekommt, auf dem steht" Danke für Ihre Nachricht" oder halt irgend ein Text... im Moment bekomme ich mit folgendem Script nur ne blöde ECHO Meldung hin und auch eine Rückleitung zur eigentlichen Seite fehlt ((
PHP:
<?php
 $name=$HTTP_POST_VARS['name'];
 $email=$HTTP_POST_VARS['email'];
 $subject=$HTTP_POST_VARS['subject'];
 $message=$HTTP_POST_VARS['message']; 

$headers = "MIME-Version: 1.0\r\n"; 

$headers .= "Content-type: text/plain; charset=utf-8\r\n"; 

$headers .= "From: $name \r\nReply-to : $name \nX-Mailer:PHP”; 

$subject=”$subject”;
 $destinataire=”YOU@EMAIL.ADRESS”;
 $body=”$message”;
 if (mail($destinataire,$subject,$body,$headers)) {
 echo “It works”;
 } else {
 echo “Problem”;
 }
 ?>
Hat da wer eine Hilfe ? Hab sowas noch nie gebraucht hab deshlab auch gar keinen Ansatz.. Onkel Googel zeigt für mich auch nur unverständliche Dinge (( Leider
Bzw wenn ich diesen Satz einbaue
<META HTTP-EQUIV="Refresh" CONTENT="10; URL=http://www.html.de">
Müsste der im PHP stehen ? oder in der Html Seite ?
Gruß Klaus
 
Zuletzt bearbeitet:
Hi,

ersetze den letzten Block, mit der Abfrage auf den Erfolg der EMail zum Beispiel mit folgendem:
PHP:
<?php
$name=$HTTP_POST['name'];
$email=$HTTP_POST['email'];
$subject=$HTTP_POST['subject'];
$message=$HTTP_POST['message']; 
$destinataire="YOU@EMAIL.ADRESS";

$headers  = "MIME-Version: 1.0\r\n"; 
$headers .= "Content-type: text/plain; charset=utf-8\r\n"; 
$headers .= "From: $name\r\n";
$headers .= "Reply-to : $name\r\n";

$ok = intval(mail($destinataire,$subject,$message,$headers));

header("Location: zielseite.php?ok=" . $ok);
die();

Somit leitet er auf die Seite "zielseite.php" um und gibt dieser einen Get-Parameter "ok" mit 0 (fehler) oder 1 (erfolgreich) mit. Diesen Wert kannst du dort dann auslesen und entsprechend eine Meldung anezeigen.

Grüße,
BK
 
Zuletzt bearbeitet:
Danke THEBLACK aber das iste s nicht ganz..
@Bratkartoffel ah ok wie gesagt bin da überhaupt nicht firm in sowas.. muss ich die 0 und die 1 nun irgendwo eingeben.****
 
@Setzch

Die 1 und die 0 sind dazu da, um zu sehen ob ein fehler aufgetreten ist oder nicht, heißt du kannst damit steuern ob die versendung erfolgreich war oder nicht.

im obrigen code ist folgendes der Fall:

PHP:
$ok = intval(mail($destinataire,$subject,$message,$headers)); //Mailt die informationen die angegeben/festgelegt wurden

header("Location: zielseite.php?ok=" . $ok); //leitet dich auf eine seite weiter(z.B. das popup fenster), in dem du abfragen kannst ob der parameter "ok" im URL 1 oder 0 ist, je nachdem kannst du einen text gestalten; bei 1 "Erfolgreich" oder bei 0 "ein fehler ist aufgetreten"
die(); // beendet den script, ist sozusagen das ende(lässt den script sterben)
 
Zurück