【发布时间】:2012-08-22 00:22:46
【问题描述】:
我是 php 新手,所以请多多包涵。我已经为我正在创建的测试网站创建了一个注册。该网站收集用户信息,然后发送确认电子邮件。到目前为止,经过多次尝试,还没有收到任何电子邮件。我已经尝试了垃圾邮件文件夹,但没有成功。
这是我的代码:
$to = "$email";
// Change this to your site admin email
$from = "someperson@gmail.com";
$subject = "Complete your registration";
//Begin HTML Email Message where you need to change the activation URL inside
$message = '<html>
<body bgcolor="#FFFFFF">
Hi ' . $username . ',
<br /><br />
You must complete this step to activate your account with us.
<br /><br />
Please click here to activate now >>
<a href="http://testw.freevar.com/activation.php?id=' . $id . '">
ACTIVATE NOW</a>
<br /><br />
Your Login Data is as follows:
<br /><br />
E-mail Address: ' . $email . ' <br />
Password: ' . $password . '
<br /><br />
Thanks!
</body>
</html>';
// end of message
$headers = "From: $from\r\n";
$headers .= "Content-type: text/html\r\n";
$to = "$to";
// Finally send the activation email to the member
mail($to, $subject, $message, $headers,-f $from);
提前致谢!
附:我在网上阅读了有关 php.ini 文件夹的信息。我正在从头开始创建一个网站,不知道这是什么或是否有必要。另外,我正在使用没有电子邮件地址的免费托管服务。我不确定这是否会影响它。
【问题讨论】:
-
您是否有权访问任何可能告诉您出了什么问题的错误日志?
-
您是否碰巧在 Windows 上运行的服务器上对此进行了测试?另外,
mail()的最后一个参数之前的-f是什么?你不能在那里。无论如何,您已经在$headers中拥有发件人地址。 -
我的第一个问题是,$to 是在哪里定义的?我看到
$to = $to和$to = $email但$email是什么? -
你的邮件功能中的“-f”是什么? $email 设置在哪里?