织梦邮件php,DEDECMS开启邮箱验证通知的解决方法

本文详细介绍了如何在DEDECMS中设置会员注册时的邮箱验证功能,包括配置SMTP服务、修改后台设置及调整发信内容等步骤。

在论坛上看到很多人都说这个功能没用,邮箱根本无法收到邮件,经过DEDE技术吧的测试,发现这个功能还是可行可用的,本帖教程讲述一步步如何设置DEDE会员注册开启邮箱验证通知的修改操纵方法:

1、进入自己已有的邮箱,设置帐户,选择“开启POP3/SMTP服务 ”并保存更改。我就哪我现有设置好的邮箱给大家演示(注:我用的是腾讯企业邮箱,特别注意我画红部分,第一个必要设置就是在邮箱里设置:开启POP/SMTP服务,第二个就是必要获取POP服务器的信息),如图:

969144569885c00a00b27ffc9fc2c75c.png

2、进入dede后台,系统,系统基本参数,核心设置,配置好邮箱发信的信息.以下是我的配置(说明和如演示图):是否启用smtp方式发送邮件:是.

smtp服务器: smtp.exmail.qq.com (注:因为我用的是QQ企业邮箱,所以可以参照上图演示第二个画红部分.POP服务器为:我所填写的:smtp.exmail.qq.com,一般这个POP服务器的填写不是乱填,请一定要参考你使用的邮箱他们所在的POP服务器.)

smtp服务器端口: 25 (一般这个不需要可以去修改改变.默认为:25)

SMTP服务器的用户邮箱: webmaster@asqq8.net (这里填写完整的邮箱地址)

SMTP服务器的用户帐号: webmaster (这里填写邮箱开头的账户也就是用户名)

SMTP服务器的用户密码: 123456 (密码就不用多说了)

efa613b40b8c6fe869c0906f5623f8a2.png

3.进入dede后台,系统,系统基本参数,会员设置,在“会员使用权限开通状态(-10 邮件验证 -1 手工审核, 0 没限制)”填-10 如图:

bffa92aeeaa62a7ae53660f775d17fe0.png

教程演示操纵到这里,已经可以收到邮件了.测试下!(附:下面修改邮箱发信的内容,我们适当的修改下发信内容)修改操纵方法如下:

打开member文件夹下的reg_new.php文件,我这边DW上修改是在:211 - 239行,找到以下内容://邮件验证

if($cfg_mb_spacesta==-10)

{

$userhash = md5($cfg_cookie_encode.'--'.$mid.'--'.$email);

$url = $cfg_basehost.(empty($cfg_cmspath) ? '/' : $cfg_cmspath)."/member/index_do.php?fmdo=checkMail&mid={$mid}&userhash={$userhash}&do=1";

$url = eregi_replace('http://', '', $url);

$url = 'http://'.eregi_replace('//', '/', $url);

$mailtitle = "{$cfg_webname}--会员邮件验证通知";

$mailbody = '';

$mailbody .= "尊敬的用户,您好:\r\n";

$mailbody .= "欢迎注册成为[{$cfg_webname}]的会员。\r\n";

$mailbody .= "要通过注册,还必须进行最后一步操作,请点击或复制下面链接到地址栏访问这地址:\r\n\r\n";

$mailbody .= "{$url}\r\n\r\n";

$mailbody .= "Power by http://www.dedecms.com 织梦内容管理系统!\r\n";

$headers = "From: ".$cfg_adminemail."\r\nReply-To: ".$cfg_adminemail;

if($cfg_sendmail_bysmtp == 'Y' && !empty($cfg_smtp_server))

{

$mailtype = 'TXT';

require_once(DEDEINC.'/mail.class.php');

$smtp = new smtp($cfg_smtp_server,$cfg_smtp_port,true,$cfg_smtp_usermail,$cfg_smtp_password);

$smtp->debug = false;

$smtp->sendmail($email, $cfg_smtp_usermail, $mailtitle, $mailbody, $mailtype);

}

else

{

@mail($email, $mailtitle, $mailbody, $headers);

}

}

自行按照自己的习性进行修改,我简单的修改如下://邮件验证

if($cfg_mb_spacesta==-10)

{

$userhash = md5($cfg_cookie_encode.'--'.$mid.'--'.$email);

$url = $cfg_basehost.(empty($cfg_cmspath) ? '/' : $cfg_cmspath)."/member/index_do.php?fmdo=checkMail&mid={$mid}&userhash={$userhash}&do=1";

$url = eregi_replace('http://', '', $url);

$url = 'http://'.eregi_replace('//', '/', $url);

$mailtitle = "{$cfg_webname}--会员邮件验证通知";

$mailbody = '';

$mailbody .= "尊敬的用户,您好:\r\n";

$mailbody .= "欢迎注册成为[{$cfg_webname}]的会员。\r\n";

$mailbody .= "要通过注册,还必须进行最后一步操作,请点击或复制下面链接到地址栏访问这地址:\r\n\r\n";

$mailbody .= "{$url}\r\n\r\n";

$mailbody .= "Power by http://598080707.net DEDE技术吧!\r\n";

$headers = "From: ".$cfg_adminemail."\r\nReply-To: ".$cfg_adminemail;

if($cfg_sendmail_bysmtp == 'Y' && !empty($cfg_smtp_server))

{

$mailtype = 'TXT';

require_once(DEDEINC.'/mail.class.php');

$smtp = new smtp($cfg_smtp_server,$cfg_smtp_port,true,$cfg_smtp_usermail,$cfg_smtp_password);

$smtp->debug = false;

$smtp->sendmail($email, $cfg_smtp_usermail, $mailtitle, $mailbody, $mailtype);

}

else

{

@mail($email, $mailtitle, $mailbody, $headers);

}

}

教程到这里就已经全部结束,下面我再贴一张图演示下我邮箱收到信的内容截图:

982697f785ef3902dc67417d1e8c0e7a.png

b8ae5bb8098a2fad00d305c32384bd80.png

最后成功收取到了验证邮件!

软件大小:8.14MB

软件类别:国产软件 | CMS建站

软件语言:简体中文

运行环境:PHP/Mysql

软件授权:免费版

更新时间:2015-6-19 9:42:25

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值