2016-04-14 6 views
0

Ich versuche, diese PHP-Code in meine Kontaktform zu integrieren, alle HTML-Eingänge sind in Ordnung, es muss ein Fehler im PHP-Skript sein, hier ist der Code:PHP Kontaktformular Fehler Senden von Mail

<?php 
$to = '[email protected]; 
$subject = 'New Website Message'; 
$headers = 'From: (Website Form) <POST['email']>' . "\r\n" . 'Content-type: text/html; charset=utf-8'; 
$message = ' 
<html> 
    <head> 
     <title>You have received a new message!</title> 
    </head> 
    <body> 
     <h3>Name: <span style="font-weight: normal;">' . $_POST['name'] . '</span></h3> 

     <h3>Email: <span style="font-weight: normal;">' . $_POST['email'] . '</span></h3> 

     <div> 
      <h3 style="margin-bottom: 5px;">Message:</h3> 
      <div>' . $_POST['message'] . '</div> 
     </div> 
    </body> 
</html>'; 

if (!empty($_POST['name']) && !empty($_POST['email']) && !empty($_POST['message'])) { 
    if (filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) { 
     mail($to, $subject, $message, $headers) or die('<span style="color: red;">Error sending Mail</span>'); 
     echo '<span class="send-true" style="color: #00dd63;">Your email was sent!</span>'; 
    } 
} else { 
    echo '<span style="color: red;">All fields must be filled!</span>'; 
} 
?> 
+0

'' 'müssen _POST $ sein [ 'E-Mail']' –

Antwort

2

Scheint wie du einen Syntaxfehler hast. versuchen diese:

<?php 
$to = '[email protected]'; 
$subject = 'New Website Message'; 
$headers = 'From: (Website Form) <$_POST['email']>' . "\r\n" . 'Content-type: text/html; charset=utf-8'; 
$message = ' 
<html> 
    <head> 
     <title>You have received a new message!</title> 
    </head> 
    <body> 
     <h3>Name: <span style="font-weight: normal;">' . $_POST['name'] . '</span></h3> 

     <h3>Email: <span style="font-weight: normal;">' . $_POST['email'] . '</span></h3> 

     <div> 
      <h3 style="margin-bottom: 5px;">Message:</h3> 
      <div>' . $_POST['message'] . '</div> 
     </div> 
    </body> 
</html>'; 

if (!empty($_POST['name']) && !empty($_POST['email']) && !empty($_POST['message'])) { 
    if (filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) { 
     mail($to, $subject, $message, $headers) or die('<span style="color: red;">Error sending Mail</span>'); 
     echo '<span class="send-true" style="color: #00dd63;">Your email was sent!</span>'; 
    } 
} else { 
    echo '<span style="color: red;">All fields must be filled!</span>'; 
} 
?> 
+0

Danke es hat funktioniert. –

+0

Ich kann keine Bearbeitung senden, da meine Bearbeitung weniger als sechs Zeichen umfasst, aber Sie ein Endzitat am Ende der $ to-Variablendeklaration verpassen. Dies würde definitiv einen Syntaxfehler verursachen. Dies geschieht auch in der OP –

+0

noch einige Zitate fehlen um '$ _POST ['name']' –