我试图使用PHP邮件功能,以便在用户输入电子邮件地址后将电子邮件发送给包含其密码的用户。我意识到安全不是很好,因为我是通过电子邮件传递密码,但我可以关注这一点以后。现在,我只需要这个功能。似乎代码正在工作,因为我得到了我的成功信息返回,但我没有收到电子邮件,有什么想法?我正在使用Joomla3.0,它作为XAMPP服务器解决方案包的一部分托管在Apache服务器上。我还将全局配置中的设置更改为SMTP,因为我在其他论坛上看到了这一点,但没有运气:(我想知道'localhost‘因素会不会导致问题?
我的表单操作代码(在用户输入电子邮件后)是;
<?php
if (isset($_POST['submit']))
{
mysql_connect('localhost','root','') or die("Could not connect to database");
mysql_select_db('joomla_lifestyle') or die("Could not select database");
$email = $_POST['email'];
$sql = mysql_query("SELECT * FROM users WHERE Email ='$email'");
$result = mysql_num_rows($sql);
if ($result == 1)
{
$rows = mysql_fetch_array($sql);
$password = $rows['Password'];
$email = $rows['Email'];
$subject = "Password Request";
$header = "from: ciaraodonovan000@gmail.com";
$body = "Your Password is " . $password;
mail($email, $subject, $header, $body);
$msg = "An Email Containing the Password has been Sent to you!";
header("Location:/Joomla-Lifestyle/index.php?option=com_content&view=article&id=9&msg=$msg");
} else
{
$msg = "User doesn't exist, please try again.";
header("Location:/Joomla-Lifestyle/index.php?option=com_content&view=article&id=9&msg=$msg");
}
}
?>发布于 2014-03-19 16:36:37
我认为你把这两个独立的概念结合起来才能起作用。第一个是发送电子邮件的服务器及其配置,第二个是Joomla后端设置来利用服务器发送电子邮件。
除非运行PHP的服务器(本例中为XAMP)有一种实现SMTP传输的有效方法,否则使用PHP将无法工作。我总是将Joomla配置为使用SMTP身份验证来接触客户端、邮件服务器和发送电子邮件。
对于您的本地开发环境,使用或设置Gmail帐户,并使用以下设置可以在Joomla框架内发送电子邮件。
邮件发送者: SMTP
电子邮件:输入您喜欢的内容。
姓名:输入您喜欢的内容。
发送邮件路径:留空
SMTP身份验证:是
SMTP安全性: TLS
SMTP端口: 587
SMTP用户名: gmail电子邮件地址
SMTP密码: gmail电子邮件密码
SMTP主机: smtp.gmail.com
https://stackoverflow.com/questions/22489362
复制相似问题