phpmailer can';不要发邮件
嗨,我尝试向注册用户发送邮件 这是我的代码:phpmailer can';不要发邮件,php,mysql,email,Php,Mysql,Email,嗨,我尝试向注册用户发送邮件 这是我的代码: function email($to, $subject, $body, $from){ require'PHPMailer-master/PHPMailerAutoload.php'; define('GUSER', 'ivan.goricki99@gmail.com'); define('GPWD', 'pass'); $mail = new
function email($to, $subject, $body, $from){
require'PHPMailer-master/PHPMailerAutoload.php';
define('GUSER', 'ivan.goricki99@gmail.com');
define('GPWD', 'pass');
$mail = new PHPMailer(); // create a new object
$mail->IsSMTP(); // enable SMTP
$mail->SMTPDebug = 0; // debugging: 1 = errors and messages, 2 = messages only
$mail->SMTPAuth = true; // authentication enabled
$mail->SMTPSecure = 'ssl'; // secure transfer enabled REQUIRED for GMail
$mail->Host = 'smtp.gmail.com';
$mail->Port = 465;
$mail->Username = GUSER;
$mail->Password = GPWD;
$mail->SetFrom($from);
$mail->Subject = $subject;
$mail->Body = $body;
$mail->AddAddress($to);
}
function register_user($register_data){
array_walk($register_data, 'array_sanitize');
$register_data['password'] = md5($register_data['password']);
$fields = '`' . implode ('`, `', array_keys($register_data)) . '`';
$data = '\'' . implode('\',\'',$register_data) . '\'';
mysql_query("INSERT INTO `users` ($fields) VALUES ($data)");
email($register_data['email'], 'Aktivirajte svoj korisnički račun', "Zdravo".$register_data['username'].",\n\n da bi aktivirao svoj korisnički račun odi na dolje navedeni link:\n\n http://localhost/New%20folder%20(4)/index.php/activate.php?email=".$register_data['email']."&email_code=".$register_data['email_code']."\n\n CroVision");
}
我的代码中没有错误,但仍然无法发送邮件
谢谢更改$mail->SMTPDebug=0;至$mail->SMTPDebug=1;因此,它将向您显示错误 还要确认是否将变量作为电子邮件地址传递 如果您使用的是任何托管帐户,则有时可能无法使用SMTP发送
如果您使用的是localhost,请尝试在php.ini文件中打开ssl。如果您没有看到任何错误,它可能会解决您的问题。在调用email()时,您没有为$from参数提供任何值。我希望您正在使用Linux。如果是这种情况,请检查您的
/var/log/mail.log
或/var/log/maillog
取决于linux发行版。问题可能是服务器为不同的重新分配而跳转您的电子邮件
注意:您是否安装了sendmail或postfix
如果这是windows环境,我很抱歉,我帮不了你
祝您好运您是否尝试启用调试?@RowlandShaw仍然没有任何结果。
$mail->Send()
调用的结果状态是什么?请尝试端口号587或尝试使用硬编码电子邮件,而不是通过$to传递。如果没有,请检查垃圾邮件