很多站长朋友们都不太清楚php邮件客户端,今天小编就来给大家整理php邮件客户端,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 网站在线留言:RainLoop邮件服务器系统怎么样 2、 请问一下,PHP配置SMTP怎么弄? 3、 如何使用thinkphp发送邮件 4、 如何用php结合phpmailer发送邮件 5、 关于用程序发送邮件,如:php/asp 6、 PHP发送的电邮, hotmail收不到, 怎样做? 网站在线留言:RainLoop邮件服务器系统怎么样RainLoop:基于WEB的邮件服务器系统是一个免费开源的PHP Web Mail 客户端系统应用工具,可以用一个见面管理多个帐号,该程序拥有简介的界面和全面的功能,支持SMTP+IMAP,是个人邮件客户端的最佳程序。
RainLoop并不需要数据库,应用程序不存储电子邮件,应用直接访问邮件服务器和RainLoop显示邮件而已,简单实用!性能方面完全取决于你的服务器内存和网速了,当然我们自己或者小团队使用的话,完全没有问题。
RainLoop环境支持:Web服务器:Apache、nginx、lighttpd;PHP: 5.3及以上;
PHP extensions: cURL, iconv, json, libxml, dom, openssl, DateTime, PCRE, SPL;
浏览器:Internet Explorer 8,火狐,Opera 10+,Safari 3以上,谷歌Chrome。
请问一下,PHP配置SMTP怎么弄?PHPMailer的获取:
PHPMailer项目地址:PHPMailer 使用git命令克隆到本地,或直接在该项目页面的右下方点击“ Download ZIP ”即可获取到完整的PHPMailer代码包,再到本地解压即可。
步骤一:使我们的QQ邮箱能够发送邮件
这里怎么说能够发送邮件呢?其实我们的邮箱都是可以发送邮件的,但是要实现在我们的网站中发送邮件,那就要设置一下我们的QQ邮箱了,因为此时我们的网站现在是作为一个第三方客户端存在的。
步骤一:使我们的QQ邮箱能够发送邮件
这里怎么说能够发送邮件呢?其实我们的邮箱都是可以发送邮件的,但是要实现在我们的网站中发送邮件,那就要设置一下我们的QQ邮箱了,因为此时我们的网站现在是作为一个第三方客户端存在的
由于待会我们用到的是SMTP服务器来发送,在这里建议把前面的两项开启了!当你点击开启的时候,它会提示:
当你完成以上步骤之后,就会得到一个授权码,你可以先复制出来,待会我们会用到(开启两项的话会得到两个授权码,用最后的那个授权码!或者点击下面的生成授权码来获取一个新的授权码,一定要最新的!)。
步骤二:使我们的PHP能够使用QQ邮箱发送邮件
PHPMailer需PHP的socket扩展支持,而PHPMailer链接qq域名邮箱时需要ssl加密方式,固php还得openssl的支持,可以查看phpinfo,如下两项均存在则可以使用,其中openssl版本号之类不用管;许多虚拟主机中的php是不支持openssl扩展的,那你可能就悲剧了。
步骤三:将PHPMailer做一定的处理
由于我们下载下来的PHPMailer文件夹里边的文件有很多我们是用不上的,所以我们也没必要浪费这些内存。我们可以对这个文件夹瘦身,在这里我只保存了以下的几个文件:class.phpmailer.php、class.phpmaileroauth.php、class.pop3.php、class.smtp.php、PHPMailerAutoload.php。
/*发送邮件方法
?*@param?$to:接收者?$title:标题?$content:邮件内容
?*@return?bool?true:发送成功?false:发送失败
?*/function?sendMail($to,$title,$content){????//引入PHPMailer的核心文件?使用require_once包含避免出现PHPMailer类重复定义的警告
????require_once("phpmailer/class.phpmailer.php");?
????require_once("phpmailer/class.smtp.php");????//实例化PHPMailer核心类
????$mail?=?new?PHPMailer();????//是否启用smtp的debug进行调试?开发环境建议开启?生产环境注释掉即可?默认关闭debug调试模式
????$mail->SMTPDebug?=?1;????//使用smtp鉴权方式发送邮件
????$mail->isSMTP();????//smtp需要鉴权?这个必须是true
????$mail->SMTPAuth=true;????//链接qq域名邮箱的服务器地址
????$mail->Host?=?'smtp.qq测试数据';????//设置使用ssl加密方式登录鉴权
????$mail->SMTPSecure?=?'ssl';????//设置ssl连接smtp服务器的远程服务器端口号,以前的默认是25,但是现在新的好像已经不可用了?可选465或587
????$mail->Port?=?465;????//设置smtp的helo消息头?这个可有可无?内容任意
????//?$mail->Helo?=?'Hello?smtp.qq测试数据?Server';
????//设置发件人的主机域?可有可无?默认为localhost?内容任意,建议使用你的域名
????$mail->Hostname?=?'';????//设置发送的邮件的编码?可选GB2312?我喜欢utf-8?据说utf8在某些客户端收信下会乱码
????$mail->CharSet?=?'UTF-8';????//设置发件人姓名(昵称)?任意内容,显示在收件人邮件的发件人邮箱地址前的发件人姓名
????$mail->FromName?=?'LSGO实验室';????//smtp登录的账号?这里填入字符串格式的qq号即可
????$mail->Username?='12345678@qq测试数据';????//smtp登录的密码?使用生成的授权码(就刚才叫你保存的最新的授权码)
????$mail->Password?=?'sqyofzbqlfkntbncl';????//设置发件人邮箱地址?这里填入上述提到的“发件人邮箱”
????$mail->From?=?'12345678@qq测试数据';????//邮件正文是否为html编码?注意此处是一个方法?不再是属性?true或false
????$mail->isHTML(true);?
????//设置收件人邮箱地址?该方法有两个参数?第一个参数为收件人邮箱地址?第二参数为给该地址设置的昵称?不同的邮箱系统会自动进行处理变动?这里第二个参数的意义不大
????$mail->addAddress($to,'lsgo在线通知');????//添加多个收件人?则多次调用方法即可
????//?$mail->addAddress('xxx@163测试数据','lsgo在线通知');
????//添加该邮件的主题
????$mail->Subject?=?$title;????//添加邮件正文?上方将isHTML设置成了true,则可以是完整的html字符串?如:使用file_get_contents函数读取本地的html文件
????$mail->Body?=?$content;????//为该邮件添加附件?该方法也有两个参数?第一个参数为附件存放的目录(相对目录、或绝对目录均可)?第二参数为在邮件附件中该附件的名称
????//?$mail->addAttachment('./d.jpg','mm.jpg');
????//同样该方法可以多次调用?上传多个附件
????//?$mail->addAttachment('./Jlib-1.1.0.js','Jlib.js');
????$status?=?$mail->send();????//简单的判断与提示信息
????if($status)?{????????return?true;
????}else{????????return?false;
????}
}
<?phprequire_once("./functions.php");$flag?=?sendMail('456789@qq测试数据','lsgo在线通知','恭喜你成功加入LSGO实验室,开启你的学习之旅吧!');if($flag){????echo?"发送邮件成功!";
}else{????echo?"发送邮件失败!";
}?>
如何使用thinkphp发送邮件Thinkphp3.2 PHPMailer 发送邮件结合QQ企业邮箱发送邮件
下载附件PHPMailer解压到ThinkPHP\Library\Vendor
在Common文件夹新建function.php
/**
?*?邮件发送函数
?*/
????function?sendMail($to,?$title,?$content)?{
?????
????????Vendor('PHPMailer.PHPMailerAutoload');?????
????????$mail?=?new?PHPMailer();?//实例化
????????$mail->IsSMTP();?//?启用SMTP
????????$mail->Host=C('MAIL_HOST');?//smtp服务器的名称(这里以QQ邮箱为例)
????????$mail->SMTPAuth?=?C('MAIL_SMTPAUTH');?//启用smtp认证
????????$mail->Username?=?C('MAIL_USERNAME');?//你的邮箱名
????????$mail->Password?=?C('MAIL_PASSWORD')?;?//邮箱密码
????????$mail->From?=?C('MAIL_FROM');?//发件人地址(也就是你的邮箱地址)
????????$mail->FromName?=?C('MAIL_FROMNAME');?//发件人姓名
????????$mail->AddAddress($to,"尊敬的客户");
????????$mail->WordWrap?=?50;?//设置每行字符长度
????????$mail->IsHTML(C('MAIL_ISHTML'));?//?是否HTML格式邮件
????????$mail->CharSet=C('MAIL_CHARSET');?//设置邮件编码
????????$mail->Subject?=$title;?//邮件主题
????????$mail->Body?=?$content;?//邮件内容
????????$mail->AltBody?=?"这是一个纯文本的身体在非营利的HTML电子邮件客户端";?//邮件正文不支持HTML的备用显示
????????return($mail->Send());
????}
添加配置文件config.php
//?配置邮件发送服务器
????'MAIL_HOST'?=>'smtp.exmail.qq测试数据',//smtp服务器的名称
????'MAIL_SMTPAUTH'?=>TRUE,?//启用smtp认证
????'MAIL_USERNAME'?=>'jufengjituan@gsjfjt测试数据',//你的邮箱名
????'MAIL_FROM'?=>'jufengjituan@gsjfjt测试数据',//发件人地址
????'MAIL_FROMNAME'=>'聚丰集团',//发件人姓名
????'MAIL_PASSWORD'?=>'******',//邮箱密码
????'MAIL_CHARSET'?=>'utf-8',//设置邮件编码
????'MAIL_ISHTML'?=>TRUE,?//?是否HTML格式邮件
最后就是使用PHPMailer发送邮件
<form?action="/help/add"?method="post"?enctype="multipart/form-data">
????邮箱:<input??type="text"?id="mail"?name="mail"/>
????标题:<input??type="text"?id="title"?name="title"/>
????内容<input??type="text"?id="content"?name="content"/>
????<input?class="button"?type="submit"?value="发送"?style="margin:?0?auto;display:?block;"/>
</form>
public?function?add(){????
????????????if(SendMail($_POST['mail'],$_POST['title'],$_POST['content']))
????????????????$this->success('发送成功!');
????????????else
????????????????$this->error('发送失败');
}
如何用php结合phpmailer发送邮件先下载phpmailer,保存在你的网站目录,在发布的页面添加一个函数用来区分发送的主题
require_once('class.phpmailer.php');
require_once("class.smtp.php");?
$mail??=?new?PHPMailer();?
$mail->CharSet????="UTF-8";?????????????????//设定邮件编码,默认ISO-8859-1,如果发中文此项必须设置为?UTF-8
$mail->IsSMTP();????????????????????????????//?设定使用SMTP服务
$mail->SMTPAuth???=?true;???????????????????//?启用?SMTP?验证功能
$mail->SMTPSecure?=?"ssl";??????????????????//?SMTP?安全协议
$mail->Host???????=?"smtp.gmail测试数据";???????//?SMTP?服务器
$mail->Port???????=?465;????????????????????//?SMTP服务器的端口号
$mail->Username???=?"your_name@gmail测试数据";??//?SMTP服务器用户名
$mail->Password???=?"your_password";????????//?SMTP服务器密码
$mail->SetFrom('发件人地址',?'发件人名称');????//?设置发件人地址和名称
$mail->AddReplyTo("邮件回复人地址","邮件回复人名称");?
????????????????????????????????????????????//?设置邮件回复人地址和名称
$mail->Subject????=?'';?????????????????????//?设置邮件标题
$mail->AltBody????=?"为了查看该邮件,请切换到支持?HTML?的邮件客户端";?
????????????????????????????????????????????//?可选项,向下兼容考虑
$mail->MsgHTML('');?????????????????????????//?设置邮件内容
$mail->AddAddress('收件人地址',?"收件人名称");
//$mail->AddAttachment("images/phpmailer.gif");?//?附件?
if(!$mail->Send())?{
????echo?"发送失败:"?.?$mail->ErrorInfo;
}?else?{
????echo?"恭喜,邮件发送成功!";
}
关于用程序发送邮件,如:php/aspSMTP协议叫做简单邮件传输协议,它主要的作用是控制邮件的中转,最终达到目的地。邮件的发送和收取实际上是由SMTP服务器完成的。当一封邮件到达SMTP机时,它会做出接收或中转邮件的选择。
POP叫邮局协议,POP3 是它的第三版。它负责将邮件从服务器接收到你的客户端。在邮件被SMTP服务器接收后,它会暂时存储在服务器上。但让用户登陆到服务器上去接收邮件,过程很繁琐且不安全。所以,你最终接收到的邮件是客户端通过POP协议访问服务器,并将邮件下载至本地。
所以,发送邮件不是PHP本身的功能,也不是ASP的功能,而是要依赖SMTP服务器。无论你用什么程序发邮件,都只是一个与服务器进行socket交互的过程。发送邮件的过程和POP协议无关。在使用邮件收发客户端的道理也是一样的。
如果想要发送邮件,就必须有一个支持SMTP的邮箱,或者一台自己架设的SMTP服务器。
PHP发送的电邮, hotmail收不到, 怎样做?亲 我给你份资料,你自己学学 关于 PHPmailer的,这个是燕十八的课,你网上搜搜,他的网站 自学IT网
,不行你就用他的方法 发邮件? 真的自己使用socke他纯便 指不定就那里写错了,建议你使用PHPMAILER
第一,需要下载PHPMailer文件包phpmailer.
第二,确认你的服务器系统已经支持socket ,通过phpinfo();查看是否支持sockets(socket 是属于PHP扩展部分),如果显现为“enabled”,那就是支持了。
第三,把文件解压到你的web服务器目录下,调用类就可以了.
首先包含class.phpmailer.php,然后创建对象,设置参数,调用成员函数。
例1,做成函数方便调用
复制代码 代码如下:
<?php???
??? require("phpmailer/class.phpmailer.php");???
??? function smtp_mail( $sendto_email, $subject, $body, $extra_hdrs, $user_name){???
??????? $mail = new PHPMailer();???
??????? $mail->IsSMTP();????????????????? // send via SMTP???
??????? $mail->Host = "200.162.244.66";?? // SMTP servers???
??????? $mail->SMTPAuth = true;?????????? // turn on SMTP authentication???
??????? $mail->Username = "yourmail";???? // SMTP username? 注意:普通邮件认证不需要加 @域名???
??????? $mail->Password = "mailPassword"; // SMTP password???
??????? $mail->From = "yourmail@yourdomain测试数据";????? // 发件人邮箱???
??????? $mail->FromName =? "管理员";? // 发件人???
??????? $mail->CharSet = "GB2312";?? // 这里指定字符集!???
??????? $mail->Encoding = "base64";???
??????? $mail->AddAddress($sendto_email,"username");? // 收件人邮箱和姓名???
??????? $mail->AddReplyTo("yourmail@yourdomain测试数据","yourdomain测试数据");???
??????? //$mail->WordWrap = 50; // set word wrap 换行字数???
??????? //$mail->AddAttachment("/var/tmp/file.tar.gz"); // attachment 附件???
??????? //$mail->AddAttachment("/tmp/image.jpg", "new.jpg");???
??????? $mail->IsHTML(true);? // send as HTML???
??????? // 邮件主题???
??????? $mail->Subject = $subject;???
??????? // 邮件内容???
??????? $mail->Body = "??
??? <html><head>??
??? <meta http-equiv="Content-Language" content="zh-cn">??
??? <meta http-equiv="Content-Type" content="text/html; charset=GB2312">??
??? </head>??
??? <body>??
??? I love php。??
??? </body>??
??? </html>??
??? ";?????????????????????????????????????????????????????????????????????????
??????? $mail->AltBody ="text/html";???
??????? if(!$mail->Send())???
??????? {???
??????????? echo "邮件发送有误 <p>";???
??????????? echo "邮件错误信息: " . $mail->ErrorInfo;???
??????????? exit;???
??????? }???
??????? else {???
??????????? echo "$user_name 邮件发送成功!<br />";???
??????? }???
??? }???
??? // 参数说明(发送到, 邮件主题, 邮件内容, 附加信息, 用户名)???
??? smtp_mail("yourmail@yourdomain测试数据", "欢迎使用phpmailer!", "NULL", "yourdomain测试数据", "username");???
??? ?>
注意:
1.邮件的字符集设置, $mail->CharSet = "GB2312"; // 这里指定字符集!在这里我只指定为GB2312因为这样Outlook能正常显示邮件主题,我尝试过设为utf-8但在Outlook下显示乱码。
2.如果是发送html格式的邮件,那么记得也指定
3.如果你想用它来群发邮件的话,记得修改包含文件函数,如:
require("phpmailer/class.phpmailer.php");
改为
require_once("phpmailer/class.phpmailer.php");
否则的话会产生类的重定义。
个人认为要使用phpmailer,首先,需要有一个邮件服务器,PHP的 mail函数没有指定,应该是使用的PHP设置的SMTP。
而在这里需要具体指定,同时需要指定邮件服务器的管理者和密码。
PHPMailer 也是一个功能强大的邮件类
PHPMailer的主要功能特点:
支持邮件 s/mime加密的数字签名
支持邮件多个 TOs, CCs, BCCs and REPLY-TOs
可以工作在任何服务器平台,所以不用担心WIN平台无法发送邮件的问题的
支持文本/HTML格式邮件
可以嵌入image图像
对于邮件客户端不支持HTML阅读的进行支持
功能强大的发送邮件调试功能debug
自定义邮件header
冗余SMTP服务器支持
支持8bit, base64, binary, and quoted-printable 编码
文字自动换行
支持多附件发送功能
支持SMTP服务器验证功能
在Sendmail, qmail, Postfix, Gmail, Imail, Exchange 等平台测试成功
提供的下载文件中,包括内容详细的说明文档及示例说明,所以不用担心难于上手的问题!
PHPMailer 非常小巧、简单、方便、快捷
以上资料由Jiucool 翻译自phpmailer 官网,转载请注明!
PHPMailer的使用(这里以使用gmail smtp发送邮件为例,当然也支持sendmail pop 等其他方式):
首先到 下载最新版本的程序包
下载完成后,找到class.phpmailer.php 、class.smtp.php两个类放到自己的目录下!
然后新建一个php文件这里命名为:phpmail_jiucool.php
phpmail_jiucool.php内容如下:
我直接将邮件发送模块写成一个函数postmail_jiucool_com(),大家使用的时候直接调用该函数即可,函数内容为:
复制代码 代码如下:
function postmail_jiucool_com($to,$subject = "",$body = ""){
//Author:Jiucool WebSite:
//$to 表示收件人地址 $subject 表示邮件标题 $body表示邮件正文
//error_reporting(E_ALL);
error_reporting(E_STRICT);
date_default_timezone_set("Asia/Shanghai");//设定时区东八区
require_once('class.phpmailer.php');
include("class.smtp.php");
$mail = new PHPMailer(); //new一个PHPMailer对象出来
$body = eregi_replace("[\]",'',$body); //对邮件内容进行必要的过滤
$mail->CharSet ="UTF-8";//设定邮件编码,默认ISO-8859-1,如果发中文此项必须设置,否则乱码
$mail->IsSMTP(); // 设定使用SMTP服务
$mail->SMTPDebug = 1; // 启用SMTP调试功能
// 1 = errors and messages
// 2 = messages only
$mail->SMTPAuth = true; // 启用 SMTP 验证功能
$mail->SMTPSecure = "ssl"; // 安全协议
$mail->Host = "smtp.googlemail测试数据"; // SMTP 服务器
$mail->Port = 465; // SMTP服务器的端口号
$mail->Username = "SMTP服务器用户名"; // SMTP服务器用户名
$mail->Password = "SMTP服务器密码"; // SMTP服务器密码
$mail->SetFrom('发件人地址,如admin#jiucool测试数据 #换成@', '发件人名称');
$mail->AddReplyTo("邮件回复地址,如admin#jiucool测试数据 #换成@","邮件回复人的名称");
$mail->Subject = $subject;
$mail->AltBody
= "To view the message, please use an HTML compatible email viewer! -
From "; // optional, comment out and test
$mail->MsgHTML($body);
$address = $to;
$mail->AddAddress($address, "收件人名称");
//$mail->AddAttachment("images/phpmailer.gif"); // attachment
//$mail->AddAttachment("images/phpmailer_mini.gif"); // attachment
if(!$mail->Send()) {
echo "Mailer Error: " . $mail->ErrorInfo;
} else {
echo "Message sent!恭喜,邮件发送成功!";
}
}
关于php邮件客户端的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php邮件客户端 php邮件收发系统的详细内容...