php的mail怎么发html格式的邮件

html-css09

php的mail怎么发html格式的邮件,第1张

可以采用

phpmailer类,来做邮件发送,这也是很多PHP程序所采用的一个类发送

require(ROOT.'/class/phpMailer.class.php')//邮件发送类

/**

*

发送邮件

*

@param

string

$to

接收人邮件地址

*

@param

string

$title

邮件标题

*

@param

string

$contents

邮件内容

支持HTML格式

*

@param

string

$type

判断是否要加附件

*

@param

string

$accessory

附件的名字

*

@return

成功返回true,失败返回错误信息

*/

function

sendEmail($to,$title,$contents,$type

=

'',$accessory

=''){

$mail

=

new

PhpMailer(true)

$mail->IsSMTP()

$mail->CharSet

="UTF-8"//编码

$mail->Debugoutput

=

'html'//

支持HTML格式

$mail->Host

=

T_SMTP_SERVER//HOST

地址

$mail->Port

=

25//端口

$mail->SMTPAuth

=

true

$mail->Username

=

T_SMTP_LOGIN//用户名

$mail->Password

=

T_SMTP_PASSWORD//密码

$mail->SetFrom(T_SMTP_FROM,T_SMTP_FROM_NAME)//发件人地址,

发件人名称

$mail->AddAddress($to)//收信人地址

//$mail->Subject

=

"=?utf-8?B?"

.

base64_encode()

.

"?="

if

(!empty($type))

{

$mail->AddAttachment($type,$accessory)

//

添加附件,并指定名称

}

$mail->Subject

=

$title//邮件标题

$mail->MsgHTML($contents)

if

($mail->Send()){

return

true

}else{

return

$mail->errorMessage()

}

}

望采纳

Thx

<?php

require_once('class.phpmailer.php')

$mail = new PHPMailer()//实例化

$mail->IsSMTP()// 启用SMTP

$mail->Host = "smtp.qq.com"//SMTP服务器 以163邮箱为例子

$mail->Port = 25 //邮件发送端口

$mail->SMTPAuth = true //启用SMTP认证

$mail->CharSet = "UTF-8"//字符集

$mail->Encoding = "base64"//编码方式

$mail->Username = "[email protected]" //你的邮箱

$mail->Password = "XXXX" //你的密码

$mail->Subject = "你好"//邮件标题

$mail->From = "[email protected]" //发件人地址(也就是你的邮箱)

$mail->FromName = "久飞WEB" //发件人姓名

$address = "[email protected]"//收件人email

$mail->AddAddress($address, "亲")//添加收件人(地址,昵称)

// 添加附件,并指定名称

$mail->IsHTML(true)//支持html格式内容

$mail->Body = '你好, <b>朋友</b>! <br/>这是一封来自<a href="http://www.jiufei.cc" target="_blank">jiufei.cc</a>的邮件!<br/>'

//发送

if(!$mail->Send()) {

echo "发送失败: " . $mail->ErrorInfo

} else {

$_SESSION['ip'] = get_client_ip()

$_SESSION['time'] = time()

echo "1"

}

function get_client_ip() {

if (getenv("HTTP_CLIENT_IP") &&strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown"))

$ip = getenv("HTTP_CLIENT_IP")

else

if (getenv("HTTP_X_FORWARDED_FOR") &&strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown"))

$ip = getenv("HTTP_X_FORWARDED_FOR")

else

if (getenv("REMOTE_ADDR") &&strcasecmp(getenv("REMOTE_ADDR"), "unknown"))

$ip = getenv("REMOTE_ADDR")

else

if (isset ($_SERVER['REMOTE_ADDR']) &&$_SERVER['REMOTE_ADDR'] &&strcasecmp($_SERVER['REMOTE_ADDR'], "unknown"))

$ip = $_SERVER['REMOTE_ADDR']

else

$ip = "unknown"

return ($ip)

}

?>

首先你的php必须有email组建

一般常用的是 jmail

<?

class Jmail

{

public $Username//邮局用户名

public $Password//密码

public $FormName //发件人姓名

public $From //发件人地址

public $Addrecipient //收件人地址

public $Ttile //邮件标题

public $Content//邮件内容

public $Smtp//邮件服务器

function Send(){

$Jmail = new com("Jmail.Message")//实例化一个Jmail对象

$Jmail->SiLent=true//设置成True的话Jmail不会提示错误只会返回True和False

$Jmail->LogGing = false//是否开启日志

$Jmail->CharSet = "GB2312"//设定字符串编码

$Jmail->ContentType = "Text/html"//邮件的格式为HTML格式

$Jmail->MailServerUsername = $this->Username//发信箱用户名

$Jmail->MailServerPassword = $this->Password//发信箱密码

$Jmail->FromName = $this->FromName//发件人姓名

$Jmail->From = $this->From//发件人地址

$Jmail->AddRecipient($this->Addrecipient)//收件人地址

$Jmail->Subject = $this->Title//Email标题

$Jmail->Body = $this->Content//Email正文

$JmailError = $Jmail->Send($this->Smtp)//Smtp服务器

if($JmailError){ //判断邮件是否发送成功

return true

}else{

return false

}

}

}

//这里是调用代码

$jmail = new Jmail()

$jmail->Username = ""//这里是smtp的帐号

$jmail->Password = ""//这里是smtp的密码

$jmail->FromName = ""//这里是邮件显示的名字

$jmail->From = ""//这里填写你发送的邮件地址

$jmail->Addrecipient = ""//这里填写你目标的邮件地址

$jmail->Title = "这是标题"

$jmail->Content = ""//这里就是你表单里面面的悲痛

$jmail->Smtp = ""//这里是你邮件的smtp地址

if($jmail->Send()){

echo "成功哦!"

}else{

echo "失败哦!"

}

?>