PHP联系表单不起作用

时间:2014-02-27 14:58:40

标签: php html forms email post

我已经尝试了每个php联系表单教程,但我无法让他们中的任何一个正确发送电子邮件。他们都只显示代码但不发送电子邮件。这是我现在的HTML代码:

<form method="POST" action="scripts/contact.php">
    <input id="name" name="name" placeholder="Name*" type="text" /> <br>
    <input id="subject" name="subject" placeholder="Subject" type="text" /> <br>
    <input id="email_address" name="email" placeholder="Email address*" type="text" /> <br>
    <textarea id="message" name="message" placeholder="Your message*"></textarea>
    <input id="submit" type="submit" name="submit" value="Send" />
</form>

这是我的php:

<?php
$name = $_POST['name'];
$subject = $_POST['subject'];
$email = $_POST['email'];
$message = $_POST['message'];


$to = "benmuschol@gmail.com";
$subject = "Hello World";
$message = "Name: $name \n Subject: $subject \n Email: $email \n Message: $message \n";
$headers = "From: $email" . $email;
mail($name,$email,$subject,$message,$headers);
echo "Mail Sent.";
?>

我对HTMl有很好的了解,但几乎没有PHP。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

首先你要确保路径脚本/ contact.php中存在php文件

第二次看phpinfo或php.ini for find是smptp服务器设置与否

答案 1 :(得分:0)

使用以下php代码:

<?php
$name = $_POST['name'];
$subject = $_POST['subject'];
$email = $_POST['email'];
$message = $_POST['message'];


$to = "benmuschol@gmail.com";
$subject = "Hello World";
$message = "Name: $name \n Subject: $subject \n Email: $email \n Message: $message \n";

$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

// Additional headers
$headers .= 'From: '.$email. "\r\n";


if(mail($to, $subject, $message, $headers))
{
    echo "Mail Sent Successfully.";
}
else
{
    echo "Error in Mail Sent.";
}


?>