2009-08-14 10 views
0

Quelqu'un pourrait-il me dire si quelque chose ne va pas avec le code ou une meilleure façon de le modifier? pour une raison quelconque, lorsque je clique sur soumettre sur mon formulaire de contact, il affiche la page "error.html" mais je reçois toujours un e-mail envoyé à mon compte.PHP Email Formulaire

$EmailTo = "[email protected]"; 
$Subject = "Contact Submission"; 

$Name = Trim(stripslashes($_POST['name'])); 
$Email = Trim(stripslashes($_POST['email'])); 
$Budget = Trim(stripslashes($_POST['budget'])); 
$Message = Trim(stripslashes($_POST['message'])); 

// prepare email body text 
$Body = 'Contact Submission'."\n"; 
$Body .= 'Name:  ' .$Name."\n"; 
$Body .= 'Email:  ' .$Email."\n"; 
$Body .= 'Budget:  ' .$Budget."\n"; 
$Body .= 'Message:  ' .$Message."\n"; 


// send email 
$success_email = mail($EmailTo, $Subject, $Body, "From: <$Email>"); 

// redirect to success page 
// CHANGE THE URL BELOW TO YOUR "THANK YOU" PAGE 
    if ($success){ 
    header ('location:thankyou.html'); 
    } 
    else{ 
    header ('location:error.html'); 
    } 
+1

c'est une bonne forme pour mettre une sortie; sous vos en-têtes de localisation - pour vous assurer que la page ne sera pas analysée dans un événement improbable – alex

Répondre

8

changement

if ($success){ 

à

if ($success_email){ 

$ succès n'existe pas ...

0
$EmailTo = "[email protected]"; 
$Subject = "Contact Submission"; 

$Name = Trim(stripslashes($_POST['name'])); 
$Email = Trim(stripslashes($_POST['email'])); 
$Budget = Trim(stripslashes($_POST['budget'])); 
$Message = Trim(stripslashes($_POST['message'])); 

// prepare email body text 
$Body = 'Contact Submission'."\n"; 
$Body .= 'Name:   ' .$Name."\n"; 
$Body .= 'Email:   ' .$Email."\n"; 
$Body .= 'Budget:   ' .$Budget."\n"; 
$Body .= 'Message:  ' .$Message."\n"; 


// send email 
$success_email = mail($EmailTo, $Subject, $Body, "From: <$Email>"); 

// redirect to success page 
// CHANGE THE URL BELOW TO YOUR "THANK YOU" PAGE 
    if ($success_email){ 
    header ('location:thankyou.html'); 
    } 
    else{ 
    header ('location:error.html'); 
    } 
0
//Checking for empty for redirecting error page 
if(empty($Name) || empty($Email)||empty($Budget)) 
{ 
    header('Location:error.html'); 
    exit; 
} 

//Send the email! if the fileds are not empty 
mail($EmailTo, $Subject,$Body,"From: <$Email>"); 

//One the email is sent, Redirect to thankyou page. 
header('Location: thankyou.html');