您的位置:首页 > 编程语言 > PHP开发

php用smtp发送邮件

2016-05-23 15:28 489 查看
1.其实用smtp协议发送邮件很简单,用框架或者原生都可以,我们需要用到class.phpmailer.php 和class.smtp.php,大家可以去网上下载。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Document</title>
</head>
<body>
<form action="mail_send.php" method="post">
<p>收件人:<input type="text" name="" /></p>
<p>标  题:<input type="text" name="title" /></p>
<p>内  容:<textarea name="content" cols="50" rows="5"></textarea></p>
<p>发件人:<input type="text" name="fromman" /></p>
<p><input type="submit" value="发送"  /></p>
</form>
</body>
</html>


2、这里我们封装好了一个类(Mail.class.php)

<?php
header("content-type:text/html;charset=utf-8");
//引入原来的类文件
require 'class.phpmailer.php';
class Mail {
static public $error = '';
static public function send($title,$content,$user,$address){
$mail= new PHPMailer();
/*服务器相关信息*/
$mail->IsSMTP();                 //设置使用SMTP服务器发送
$mail->SMTPAuth  = true;               //开启SMTP认证
$mail->Host     = 'smtp.163.com';   	    //设置 SMTP 服务器,自己注册邮箱服务器地址 QQ则是ssl://smtp.qq.com
$mail->Username   = 'zzy9i7';  //发信人的邮箱名称,本人网易邮箱 zzy9i7@163.com 这里就写
$mail->Password   = '******';    //发信人的邮箱密码
/*内容信息*/
$mail->IsHTML(true); 			  //指定邮件格式为:html *不加true默认为以text的方式进行解析
$mail->CharSet    ="UTF-8";			     //编码
$mail->From       = 'zzy9i7@163.com';	 		 //发件人完整的邮箱名称
$mail->FromName   = $user;			 //发信人署名
$mail->Subject    = $title;  			 //信的标题
$mail->MsgHTML($content);  				 //发信主体内容
//$mail->AddAttachment("15.jpg");	     //附件
/*发送邮件*/
$mail->AddAddress($address);  			 //收件人地址
//使用send函数进行发送
if($mail->Send()) {
return true;
} else {
self::$error=$mail->ErrorInfo;
return   false;
}
}
}
?>


3、我们要发送邮件就需要引入这个类,然后在做一些简单的提示

<?php
// 接收值
isset($_POST['address'])?$address=$_POST['address']:$address='';
isset($_POST['titles'])?$titles=$_POST['titles']:$titles='';
isset($_POST['content'])?$content=$_POST['content']:$content='';
isset($_POST['user'])?$user=$_POST['user']:$user='';

//引入类
require 'Mail.class.php';
if(	Mail::send($titles,$contents,$user,$address)){
echo "发送成功";
}else{
echo "发送失败".'<br>';
echo Mail::$error;
}
?>


这样呢我们就完成了一个简单的邮件发送,大家赶快试一下吧!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  smtp 邮件 php