• 全国400电话网上服务平台
    强大号码库资源任选,方便,快捷,快速开通。
    咨询热线:400-1100-266  

    织梦会员短消息与发送到指定邮箱功能开发
    POST TIME:2021-05-23 02:42

    DedeCMS自带的mail邮箱功能不仅可以使用在会员注册验证上,还能用在在自定义表单提交,站内通知提醒(短消息)等,其实这些功能都是mail功能的扩展开发。

      下面分享短消息与指定邮箱功能开发,其他需要用到地方直接参考就行了。

      1.网站后台设置邮箱相关信息

      后台:系统>系统基本参数>核心设置,看到以下表单,按邮箱设置,注意网站发信emall和下面的smtp服务器都要相同。

      

    dede表单提交后台设置

      2.指定的邮箱设置

      每个邮箱都对应的POP3/SMTP/IMAP设置,参考相关说明即可,这里需要注意的是新的163或者QQ邮箱都有独立密码或者授权码,为了安全需要,还是需要设置好授权码或独立密码,这个密码就是SMTP服务器的用户密码,不是邮箱的密码。

      3.自定义表单提交后管理员后台收到短信息并发送到指定邮箱

      

    4.会员提交文章审核,向对应的会员发送消息

      ①提取发表者ID,也就是会员中心的mid。

      打开/dede/archives_do.php,表前缀找到

      $query = "SELECT arc.id,arc.typeid,ch.issystem,ch.maintable,ch.addtable FROM `dede_arctiny` arc

      LEFT JOIN `dede_arctype` tp ON tp.id=arc.typeid

      LEFT JOIN `dede_channeltype` ch ON ch.id=tp.channeltype

      WHERE arc.id in($arcids) ";

      修改为

      $query = "SELECT arc.id,arc.mid,arc.typeid,ch.issystem,ch.maintable,ch.addtable FROM `dede_arctiny` arc

      LEFT JOIN `dede_arctype` tp ON tp.id=arc.typeid

      LEFT JOIN `dede_channeltype` ch ON ch.id=tp.channeltype

      WHERE arc.id in($arcids) ";

      

    ②获取发布短消息时间,找到

      $dsql->Execute('ckall');

      在下面添加

      $dtime = time();

     

     ③提取用户ID,并把所有信息写入短消息,发送一条短信息给对应的发布者,找到

      $dsql->ExecuteNoneQuery("Update `dede_member` set scores=scores+{$cfg_sendarc_scores} where mid='".$cfg_ml->M_ID."' ; ");

      下面添加

      $mid = $row['mid'];

      $dsql->ExecuteNoneQuery("INSERT INTO `dede_member_pms` (`floginid`,`fromid`,`toid`,`folder`,`subject`,`sendtime`,`writetime`,`hasview`,`isadmin`,`message`)

      VALUES ('admin','1','$mid','inbox','www.dede58.com文档审核消息!','$dtime','$dtime','0','0','您的文章已经经过了本站的审核!')");

      

    ④向指定邮箱发送消息

     

     在上面代码下添加下面的通用代码:
    
      require_once(DEDEINC.'/mail.class.php');
    
      $mailtitle = $mid . "提交了文档审核"; //邮件标题
    
      $mailbody = "称呼:{$mid}提交了文档审核,请登录"; //邮件正文,根据实际需求调用对应的字段
    
      $headers = $cfg_adminemail;
    
      $mailtype = 'TXT';
    
      $smtp = new smtp($cfg_smtp_server,$cfg_smtp_port,true,$cfg_smtp_usermail,$cfg_smtp_password);
    
      $smtp->debug = false;
    
      $smtp->sendmail($cfg_smtp_usermail,$cfg_webname ,$cfg_smtp_usermail, $mailtitle, $mailbody, $mailtype);

    
    关于我们 | 付款方式 | 建站知识 | 增值服务 | 网站模板
    Copyright © 2003-2016
    时间:9:00-21:00 (节假日不休)
    版权所有:巨人网络(扬州)科技有限公司
    总部地址:江苏省信息产业基地11号楼四层
    《增值电信业务经营许可证》 苏B2-20120278
    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信

    微信号已复制,请打开微信添加咨询详情!