PHP自动发送电子邮件

时间:2013-10-22 18:08:10

标签: php email send

页面无法加载。我想从我的PHP代码发送一封电子邮件。这是为慈善组织自动发送电子邮件。

`

$name = $_POST['name'];
$message = $_POST['message'];

$message = <<<EMAIL

$name

$message

EMAIL;

$header = 'hi';
if($_POST){
mail($to, $subject, $message, $header)
$feedback = "Email Sent!";
}

?>

<!DOCTYPE html>
<body>
<p id = "feedback"><?php echo $feedback; ?></p>
<form action = "emailtest.php" method = "POST">
<label for = "name">Name: </label>
<input type = "text" name = "name" id = "name" /> <br />
<label for = "message"> Enter a Message: </label>
<textarea id = "message" name = "message" cols = "42" row = "9"></textarea> <br />
<input type = "submit" value = "Send Email">

</form>
</body>
</html>`

2 个答案:

答案 0 :(得分:0)

您的第一次测试错误,$_POST变量始终可用,而且&#39;标题&#39;在函数中没有对应主题行或你认为它是什么,但邮件标题(你看到源时的一些信息,包括邮件的ID,各种邮件服务器的处理等......

另外请不要这样,因为您的代码容易受到攻击,而且您的邮件可能会被用来向其他人发送垃圾邮件。 http://www.thesitewizard.com/php/protect-script-from-email-injection.shtml 替换为

之类的东西
if(!empty($_POST)){
$name = $_POST['name'];
$message = $_POST['message'];

$message = <<<EMAIL

$name

$message

EMAIL;

mail($to, $subject, $message)
$feedback = "Email Sent!";
}
祝你好运!

答案 1 :(得分:0)

代码的功能是任意的。
mail()函数需要设置一个预先存在的SMTP邮件服务器才能使用。如果您正在运行WAMP堆栈或尚未完全配置堆栈,则可能需要采取额外的步骤来设置mail()。

有关更多信息,请参见:https://www.php.net/manual/en/ref.mail.php