使用 PHP 发送电子邮件 [重复]
Posted
技术标签:
【中文标题】使用 PHP 发送电子邮件 [重复]【英文标题】:Send an email with PHP [duplicate] 【发布时间】:2015-12-10 13:33:14 【问题描述】:我正在尝试在按下“发送电子邮件”按钮时发送电子邮件,但以下代码不会向我的电子邮件发送任何内容:
<!DOCTYPE html>
<html>
<form action="email.php" method="post">
<input value="Send Email" name="email" type="submit">
</form>
<?php
if (isset($_POST['email']))
$msg = 'hello';
mail('example@gmail.com', 'Sample', $msg);
?>
</html>
知道如何让它发挥作用吗?
【问题讨论】:
您是在本地还是在您的网站上进行测试? 从本地主机,我已经保存为email.php 有一些测试程序可以用来测试是否发送了电子邮件。之后问题不在您的代码中并且必须询问您的 ISP,或使用中间件服务,例如 sendgrid ;) @Mary E yeay 电子邮件通常无法在本地运行,除非您愿意付出很多代价,我建议您在您的网站上对其进行测试,您的代码应该可以运行 ***.com/questions/5335273/… 【参考方案1】:使用以下 PHP 代码发送电子邮件
<?php
$to = 'nobody@example.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com' . "\r\n" .
'Reply-To: webmaster@example.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
?>
邮件功能无法在本地服务器上使用。您需要在本地服务器上配置 SMTP。看看这个类似的帖子,
php mail setup in xampp
【讨论】:
***.com/questions/5335273/… 谢谢,所以我猜它不起作用,因为我在本地服务器上运行它。 是的,可能是这样...请阅读 Nana 或我在答案中分享的链接【参考方案2】:试试这个
<?php
$to = "someemail.com"
$subject = "This is subject";
$message = "<b>This is message.</b>";
$message .= "<h1>This is headline.</h1>";
$header = "From:abc@somedomain.com \r\n";
$header .= "MIME-Version: 1.0\r\n";
$header .= "Content-type: text/html\r\n";
$retval = mail ($to,$subject,$message,$header);
if( $retval == true )
echo "Message sent successfully...";
else
echo "Message could not be sent...";
?>
【讨论】:
以上是关于使用 PHP 发送电子邮件 [重复]的主要内容,如果未能解决你的问题,请参考以下文章