为什么我的邮件功能无法在XAMMP中运行?

时间:2015-07-08 17:15:33

标签: php mysql email

我一直在尝试使用XAMPP来完成这项工作,由于某种原因,邮件功能不起作用,这是我的代码。我在MAC和我的php.ini在etc文件夹中,我没有sendmail文件夹。

$_POST['email'];

$result = mail('someEmail@gmail.com', 'This is a Subject', 'This is the body of the email', 'From: $email');
echo $result ? 'Sent' : 'Error';

2 个答案:

答案 0 :(得分:0)

将此代码上传到服务器并向用户发送电子邮件时,电子邮件功能将正常工作。

尝试使用此代码,该代码在放入服务器上的文件时效果很好:

<marquee direction="down" height="540" scrollamount="4" style="max-height:540px;">

答案 1 :(得分:0)

你不能直接从localhost。一种方法是将代码移动到公共服务器或使用某些SMTP服务器(如果要使用本地主机)。 您应该对这两个文件进行一些更改 xampp \ php \ php.ini xampp \ sendmail \ sendmail.ini

php.ini 文件中搜索并找到[mail function]并使其看起来像这样

SMTP=smtp.gmail.com
smtp_port=465
sendmail_from = YOUR_MAIL@gmail.com
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"

现在在 sendmail.ini 中确保它看起来像这样

[sendmail]

smtp_server=smtp.gmail.com
smtp_port=465
error_logfile=error.log
debug_logfile=debug.log
auth_username=YOUR_MAIL@gmail.com
auth_password=YOUR_MAIL_PASS
force_sender=YOUR_MAIL@gmail.com

现在确保 php.ini

extension=php_openssl.dll

未被注释。如果还有另一个sendmail_path

,请务必注意以下行
sendmail_path="C:\xampp\mailtodisk\mailtodisk.exe"

如果一切正常,您将使用google gmail从localhost发送邮件。因此,接收方将在 FROM 字段

中看到您的Gmail