织梦自定义表单邮件提醒(阿里云禁用25端口解决办法)
开始教程之前,我们先来说说这一切的起源,阿里不知今年何时全线禁封阿里云服务器的25端口,其他家的有没有禁用因为没有使用而不得知,期初手中一个站年初时邮件通知是正常使用的,期间暂停邮件提醒把代码注释了,可是就在这几天准备重新启用的时候,发现邮件通知一直在提示超时。各种折腾了一周,依旧没解决,今天早上无意间发现,一切都是阿里云的错!
废话不多说!如果你使用的服务提供商也禁用了25端口,那么你可以照着如下操作来解决!
灵活简单易用是这个插件的最大特点
第一步:下载如下的插件,这是一款比较有名的php邮件发送类——PHPMailer
云盘下载 密码: 2p69
第二步:将上一步下载的压缩包解压后得到4个PHP文件
全部上传至织梦/plus/文件夹下
第三步:打开 /plus/diy.php 找到
$id = $dsql->GetLastID();
在这行代码之前加入如下代码:
//邮件发送开始 $emailbody = ''; foreach($diy->getFieldList() as $field=>$fieldvalue) { $emailbody .= $fieldvalue[0].':'.${$field}.'<br />'; } global $cfg_smtp_server, $cfg_adminemail, $cfg_smtp_port, $cfg_smtp_usermail, $cfg_smtp_password, $cfg_webname, $cfg_basehost, $cfg_smtp_user, $cfg_shoujianren;//启用全局变量 require_once("class.phpmailer.php"); require_once("class.smtp.php"); $mail = new PHPMailer(); $mail->IsSMTP();// 使用SMTP服务 $mail->SMTPDebug = 0; $mail->SMTPAuth = true;//是否使用身份验证 $mail->SMTPSecure = 'ssl';//邮箱的ssl协议方式端口号是465/994 $mail->Host = $cfg_smtp_server; $mail->Port = $cfg_smtp_port; $mail->IsHTML(true);//是否启用邮件html格式 $mail->Username = $cfg_smtp_usermail;// 发送方的邮箱用户名 $mail->Password = $cfg_smtp_password;// 发送方的邮箱密码,注意用163邮箱这里填写的是“客户端授权密码”,这里用到了在客户端获取到的授权码 $mail->From = $cfg_smtp_usermail;// 发送方的邮箱 $mail->FromName = '发件人名字';//发件人信息,类似 网易(admin@126.com) $mail->AddAddress($cfg_shoujianren);//收件人邮箱地址 $mail->CharSet = 'gb2312';// 编码格式,根据网站编码格式设置 $mail->Encoding = 'base64'; $mail->Subject = '邮件标题';//邮件标题 $mail->Body = '这里可以调用自定义表单中的自定义字段,并且可以使用html,例如<b>留言</b>.$liuyan';//邮件内容 $mail->send(); //邮件发送结束
到此结束!上述方法中的内容,可以在系统后台自定义,如邮件标题,收件人邮箱,发件人名字等都可以在系统设置中自定义字段后,将自定义字段内容加在 global 之中,就可以调用了!
兼容126,163,QQ,网易企业邮箱等!
常见问题解答
没有收到邮件?
检查是否在垃圾箱里了,或者你的收件人cfg_shoujianren是否添加变量名错了
没有发送成功,报错?
检查php里socket和openssl扩展是否没开启
可以在网站根目录新建个php.php 文件,里面写上
<?php phpinfo();
浏览器中打开这个文件 http://域名/php.php
查看页面中是否有
标签: 25端口
相关下载
-
织梦自定义表单ajax提交及弹窗提示
织梦教程 08-06
织梦模板2018
织梦模板2018