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传递。如果没有,请检查垃圾邮件