[英]php mail function in Joomla 3.0 not working
我正在尝试使用PHP邮件功能,允许在输入电子邮件地址后将电子邮件发送给包含其密码的用户。 我意识到安全性并不好,因为我通过电子邮件传递密码,但我可以稍后关注它。 现在,我只需要这个功能。 似乎代码正在工作,因为我得到了我的成功消息,但我没有收到任何电子邮件,任何想法? 我正在使用作为XAMPP服务器解决方案包的一部分托管在Apache服务器上的Joomla 3.0。 我也将全局配置中的设置更改为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");
}
}
?>
我认为你需要将两个独立的概念结合起来才能发挥作用。 第一个是发送电子邮件及其配置的服务器,第二个是使用服务器发送电子邮件的Joomla后端设置。
除非运行PHP的服务器(在本例中为XAMP)具有实现SMTP传输的有效方法,否则使用PHP Mail将无法工作。 我总是将Joomla配置为使用SMTP身份验证来联系客户端邮件服务器并发送电子邮件。
对于您的本地开发环境,请使用或设置Gmail帐户并使用以下设置以便能够在Joomla框架内发送电子邮件。
邮件程序:SMTP
来自电子邮件: 输入您喜欢的内容
来自姓名: 输入您喜欢的内容
Sendmail路径: 留空
SMTP验证:是的
SMTP安全:TLS
SMTP端口:587
SMTP用户名: 您的Gmail电子邮件地址
SMTP密码: 您的Gmail电子邮件密码
SMTP主机:smtp.gmail.com
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.