ThinkPHP + PHPMailer 邮件认证

坠天九夜 发布于 2012/03/11 11:18
阅读 9K+
收藏 5
现在要做一个注册之后的邮件认证,在网上找到的实例(http://www.renren.it/a/bianchengyuyan/PHP/20111031/103549.html),弄好之后,会提示 Fatal error: Class 'PHPMailer' not found in C:\PHP\WampServer\www\xuanba\Common\common.php on line 4

请高手指导,谢谢
加载中
1
坠天九夜
谢谢各位,已经能用了~谢谢,谢谢~
0
leo108
leo108
你没包含PHPMailer这个类
0
工程师爸爸
工程师爸爸

1、下载PHPMailer 把此类放入ThinkPHP 的 Vendor内(不是项目目录)

保证\thinkphp\Vendor\PHPMailer\class.phpmailer.php 这样的目录结构可以访问

2、项目配置文件(项目目录\Conf\config.php)内写入如下配置文件

'MAIL_ADDRESS'=>'', // 邮箱地址
'MAIL_SMTP'=>'', // 邮箱SMTP服务器
'MAIL_LOGINNAME'=>'', // 邮箱登录帐号
'MAIL_PASSWORD'=>'', // 邮箱密码

3、项目公共目录(项目目录\Common\)下建立 common.php 添加 如下配置文件

<?php
/**********
 * 发送邮件 *
 **********/
function SendMail($address,$title,$message)
{
    vendor('PHPMailer.class#PHPMailer');

    $mail=new PHPMailer();          // 设置PHPMailer使用SMTP服务器发送Email
    $mail->IsSMTP();                // 设置邮件的字符编码,若不指定,则为'UTF-8'
    $mail->CharSet='UTF-8';         // 添加收件人地址,可以多次使用来添加多个收件人
    $mail->AddAddress($address);    // 设置邮件正文
    $mail->Body=$message;           // 设置邮件头的From字段。
    $mail->From=C('MAIL_ADDRESS');  // 设置发件人名字
    $mail->FromName='XXX网团队';  // 设置邮件标题
    $mail->Subject=$title;          // 设置SMTP服务器。
    $mail->Host=C('MAIL_SMTP');     // 设置为"需要验证" ThinkPHP 的C方法读取配置文件
    $mail->SMTPAuth=true;           // 设置用户名和密码。
    $mail->Username=C('MAIL_LOGINNAME');
    $mail->Password=C('MAIL_PASSWORD'); // 发送邮件。
    return($mail->Send());
}
?>

4、这时候已经可以使用了,在需要发送邮件时调用如下代码

<?php

$email = 'hujintao@china.com';  //PS:这不两会嘛,反映民情给胡主席的邮件~~
$title = '农村医保现存问题的深入剖析';  //标题
$content = '这里我就不邪恶了~';  //邮件内容
SendMail($email,$title,$content); //直接调用发送即可

?>

0
s
shenhui099
感谢,很好用
0
zgz小周
zgz小周
  为什么会报无法实例化mail类的问题呢?求解
返回顶部
顶部