繁体   English   中英

用php按下按钮后如何发送电子邮件?

[英]How to send an email after pressing a button with php?

我已经安装了xampp和apache和汞。 我已经配置好了汞,以便可以从脚本发送电子邮件,并且已经对其进行了测试,并成功地将一些电子邮件发送到了我的电子邮件地址。

我想在按下按钮后发送电子邮件,但是以下脚本无法正常工作。 您能告诉我该怎么办或代码有什么问题吗?

谢谢!

sample.php的代码:

<form action="sample.php" method="post">
    <input type="submit" value="Send details" />
    <input type="hidden" name="button_pressed" value="1" />
</form>

<?php

if(isset($_POST['button_pressed']))
{
    $to      = 'example@example.com';
    $subject = 'the subject';
    $message = 'hello';
    $headers = '';
    mail($to, $subject, $message, $headers);

    echo 'Email Sent.';
}

?>

如果您在本地进行开发,则需要设置一些设置才能使用SMTP。

这可能会有所帮助: http : //roshanbh.com.np/2007/12/sending-e-mail-from-localhost-in-php-in-windows-environment.html

老实说,我还没有深入到Mercury,因为我很早以前就采用了PHPMailer路线。

我仍然可以告诉您,Gmail非常挑剔,它需要加密,而我不知道邮件功能是否可以提供。

除此之外,它可能会禁止您的邮件服务器,例如,使用smtpd它将使我发送一段时间的邮件,直到它们无声地停止工作为止(我猜想他们的验证需要一些时间)。

它还不止于此,例如,它可能会判定您的应用程序的行为可疑,并将停止允许它发送邮件,直到您通过网络从同一计算机登录为止。

而且,如果您启用了两因素身份验证...那么您的代码将无法(或至少不应)访问您的手机,则必须以一定频率登录才能使其正常运行。

当然,有解决此问题的方法,首先应转到“ 连接的站点,应用程序和服务”页面,然后在其中创建一个Application-specific password ,您的应用程序应使用该Application-specific password进行身份验证。 然后转到“ 允许新应用程序访问您的帐户”页面,这将使您有时间登录该应用程序。 您可以在Google的支持页面上了解更多信息。

总而言之,我有两个建议:

  • 使用PHPMailer
  • 不再使用GMail,我最近开始使用mail.com来接收来自应用程序的邮件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM