PHP邮件发送

php带有内置的mail() 发送邮件函数,但是较为繁琐;建议上网下载一个PHPMailer;

一般有两个文件,左边的文件夹是包含class类文件等,右边就是发送配置文件

<?php
require 'phpmailer/class.phpmailer.php';

$mail = new PHPMailer();
   $mail->IsSMTP();
   $mail->CharSet = 'utf-8';

   $mail->Host = 'smtp.qq.com';//这里设置你要选择发送的邮箱类型

   // 如果是QQMAIL必须用设置SSL还有端口
   $mail->SMTPSecure = 'ssl'; //设置使用ssl加密方式登录鉴权
   $mail->Port = 465;//设置ssl连接smtp服务器的远程服务器端口号 可选465或587

   $mail->SMTPAuth = true; //smtp需要鉴权 这个必须是true
   $mail->Username = '豪';//这里设置你选的邮箱的用户名
   $mail->Password = '123456789';//QQ邮箱的话,这里设置你选的邮箱的密码,授权码;如果是其他邮箱则是邮箱密码

   $mail->From = 'xxx@qq.com';//发送邮件的邮箱地址
   $mail->FromName = 'Jacko';//发送邮件的名字

   $mail->Subject = '测试';//这个好像是标题
   $mail->Body = '你好,这封是测试邮件';//这个好像是内容

   $mail->AddAddress("xxxx@qq.com", $name = "小明");//第一个是接收人的邮箱的地址,第二个是接收人的名字

   $result = $mail->send();

   if($result){
      echo '发送成功';
   }else{
      echo '发送失败';
   }

?>

一般PHPMailer的文件可以从网上找到,我们下载后主要根据自己的邮箱类型来修改发送文件配置,上面备注红色的是一定要去自己修改的,一般163的邮箱是HOST那里是写smtp.163.com,如果是QQ邮箱就如上,还有要设置ssl和端口,这样才能成功发送出去;
发送不出去的话,还有以下原因:
  (1)邮箱没有开启SMTP的权限,这个你要登陆自己邮箱里面设置开启;一般这样就基本可以发送了!

  (2)或者是你的SSL没有开启,这个需要到php.ini里面修改;如下图

这个phpemailer大概就是需要配置这些东西,至于php自带的mail(),我也在研究,有经验的大牛,请指点指点!
posted @ 2016-01-09 09:22  -JackoChan  阅读(...)  评论(...编辑  收藏