【问题标题】:Unable to send mail via php using mail() or phpmailer in wamp64 [duplicate]无法在 wamp64 中使用 mail() 或 phpmailer 通过 php 发送邮件 [重复]
【发布时间】:2018-05-04 19:11:49
【问题描述】:

我正在创建一个登录页面。为此,注册后我需要将邮件发送给用户进行验证。因此,我需要发送邮件。要发送邮件,我尝试了这样的 mail() 函数,

<?php
//sending email with the php mail()
mail('mahadev.3333@gmail.com', 'Subject Line Here', 'Body of Message Here', 'From: vidya.5555@gmail.com');
?>

我已经配置了 php.ini 文件,如下所示,

[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = localhost
; http://php.net/smtp-port
smtp_port = 25

; For Win32 only.
; http://php.net/sendmail-from
sendmail_from ="vidya.merahkee@gmail.com"

我使用的是 Windows 64 位。

我也尝试过使用 phpmailer。但是,我没有找到任何解决方案。因为,2 天我正在尝试这个。我无法做到这一点。

谁能帮我解决这个问题?

【问题讨论】:

  • 您收到了什么样的错误消息或意外行为? (另外,作为礼仪指针,highlighting the urgency of your question 是不受欢迎的)
  • 您的机器上真的运行着 SMTP 服务器吗?尝试运行命令提示符(开始菜单 > 运行 > cmd),然后运行 ​​telnet localhost 25。它连接了吗?

标签: php email


【解决方案1】:

首先,如果您在生产服务器上使用脚本,请询问您的管理员邮件功能是否处于活动状态。有时在生产服务器上它被站点管理员阻止。

其次,如果您在 localhost 服务器上使用此脚本意味着在您的桌面上,那么首先您必须使用邮件服务器启动。

例如,我正在考虑您在 Windows 上使用 XAMMPP,那么您必须从 XAMPP 控制面板启动 Mercury 邮件服务器Mercury 默认带有 postmasternewuser 两个用户。

然后你必须下载 Mozilla Thunderbird 邮件客户端并配置 邮件客户端中的 newuserpostmaster 用户,通过使用 newuser@localhost 跟随 Create New account > email 并手动配置 pop 和 smtp 服务器和港口 。通常是默认端口。

你可以使用sendmail_from ="newuser@localhost"

然后检查 Mercury 邮件服务器是否正在运行,然后测试您的脚本。

它会发送邮件,然后您在 Mozilla Thunderbird 邮件客户端中检查它。

第三:要设置From:,您必须使用header,如下所示

$headers = "From: newuser &lt; newuser@domain.com &gt;\n";

   <?php
     $send_to      = 'postmaster@localhost';
     $mail_subject = 'Subject of Your mail';
     $message_body = 'Body of your email like message form php script.';
     $headers = 'From: newuser@localhost' . "\r\n";
     mail($send_to, $mail_subject, $message_body, $headers);

  ?>

我希望这能解决问题。

注意如果您想从 localhost 发送电子邮件到 gamil 或任何其他邮件站点,那么您必须使用 sendmail 应用程序或更多教程搜索 google 术语,如 '在 PHP 中通过 Gmail 发送电子邮件'

【讨论】:

  • 我在这里使用 wamp。
  • 不是问题。如果您想要快速解决方案,那么只需下载 XAMPP 并在 XAMPP 中停止 apache 和 mysql 并让您的 wamp 服务器运行 Apache 和 Mysql 。在 XAMPP 中只需启动 **Mercury 邮件服务器 ** 尝试测试。我希望这会奏效。
  • 我也尝试过使用发送邮件应用程序。但是,我仍然面临同样的问题。我参考了以下视频,youtube.com/watch?v=qqm64zHlFUg
  • 我这里有个查询,是不是用wamp做不到?
  • 感谢更新
猜你喜欢
  • 2014-03-24
  • 2012-05-26
  • 1970-01-01
  • 2011-05-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-06
  • 1970-01-01
相关资源
最近更新 更多