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(),我也在研究,有经验的大牛,请指点指点!