【发布时间】:2016-05-10 03:36:38
【问题描述】:
我是新来的。 我试图向使用 PHP 的人发送电子邮件。 环顾四周,我发现了一些对我有帮助的信息,但没有解决问题。不知道哪里出错了。
当我尝试发送表单时,我得到一个空站点,这意味着我没有收到任何错误。但是我没有收到邮件。
我已经尝试过的:
- php.ini 和 sendmail.ini 的变化
- 尝试使用 error_get_last() 获取错误
我使用的代码:
mail.php
<?php
$m = $_POST['mail'];
$b = $_POST['subject'];
$z = $_POST['time'];
$d = $_POST['date'];
$hf = $_POST['mw'];
$f = $_POST['company'];
$t = $_POST['phone'];
$ta = $_POST['ta'];
$n = "test";
if(!empty($_POST['ha'])){$ha = "Something";} else { $ha = "Something else";}
if(!empty($_POST['hz'])){$hz = "Something";} else { $hz = "Something else";}
if(!empty($_POST['rwa'])){$rwa = "Something";} else { $rwa = "Something else";}
if(!empty($_POST['ba'])){$ba = "Something";} else { $ba = "Something else";}
mail($m, $b, $n); ?>
php.ini
SMTP = smtp.gmail.com
smtp_port = 587
sendmail_from = gluray.simons@gmail.com
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"
;sendmail_path = "C:\xampp\mailtodisk\mailtodisk.exe"
sendmail_path="C:\xampp\mailtodisk\mailtodisk.exe"
mail.add_x_header=Off
sendmail.ini
smtp_server=smtp.gmail.com
smtp_port=587
error_logfile=error.log
debug_logfile=debug.log
auth_username=gluray.simons@gmail.com
auth_password=mypassword
force_sender=gluray.simons@gmail.com
我使用 Xampp 控制面板 v3.2.2,PHP 5.6.15
提前致谢。
【问题讨论】:
-
阅读PHP mail form doesn't complete sending e-mail。此外,如果你得到一个“空站点”,它可能表明你有一些语法/解析错误,请参阅
error_reporting(E_ALL);ini_set('display_errors', 1); -
而且,只是一个建议 - 您可以在
if-blocks 上使用三元运算符来获得更简洁的代码。看起来像$ha = (!empty($_POST['ha']) ? "Something" : "Something else");