//自定义钩子函数,命名:模块_函数名_output()或模块_函数名() //一个是模块执行完,模板输出前执行.一个是模块执行前 //post_reply_output函数会在所有post操作中都会执行,通过$params['message']来区别 public function post_reply_output($params) { global $_G; //判断是否为主题回复成功时 if($params['message'] != 'post_reply_succeed') { re…
添加smtp服务器,填写相应的smtp服务器,发信人地址,用户名和密码.   填写发件人地址和收件人地址来测试邮件是否发送成功.…
一.完善用户是否开启回贴通知 回贴通知插件建立模块时,指定了核心文件post_set.inc.php   1.创立好数据库 建立独立数据表(不建议直接修改原有的discuz数据库,防止discuz升级后数据库发生变化),来保存是否开启回贴通知. create table 前缀_模块_逻辑表名 ( `uid` mediumint(8) unsigned NOT NULL, `isnotice` tinyint not null default 0 comment '0关闭,1开启', primar…
1.如何保证主题被回复时业务代码被执行. 2.获得主题,主题发布者,贴子等信息. 3.discuz发送email邮件.   discuz使用嵌入点(钩子)来处理代码的执行时机. 当用户开启插件开发者模式时,页面上会输出提供好的预先定义的嵌入点.   例如:我们需要在用户发贴时,告知用户是否开启了回贴通知. 1.我们在插件后台添加页面嵌入 2.在插件目录下创建noticeme.class.php文件 该文件为类文件,定义该插件的嵌入类,该类中的方法就是嵌入点中的钩子方法. 嵌入类:1.全局嵌入类,…
如果涉及到页面的展示,模板,提示信息,通常会   1.建立好需要的文字的翻译 在disucz的data/plugindata目录创建一个插件所使用的语言文件,命名方式为: 插件标识符.lang.php,如post_notice.lang.php <?php //判断是否被常规请求 defined('IN_DISCUZ') or die('Access Denied'); //程序脚本中使用的翻译 $scriptlang['post_notice'] = array( 'set_success'…
1.获取用户提交数据 discuz通过$_GET来获取全部数据,包括($_GET,$_POST). else if($_GET['pluginop'] == 'set') { //获取用户提交数据 $isNotice = $_GET['isNotice']; $mForumPostNotice = C::t('#post_notice#forum_post_notice'); if($mForumPostNotice->updNoticeState($_G['uid'], $isNotice))…
1.登出discuz后台,再次设计插件 2.使用变量    …
通过discuz的sendmail()来发送邮件 //引入发送邮件的函数文件 include libfile('function/mail'); //设置收件人地址,标题,内容发送邮件 sendmail($email, $subject, $body);…
引言: JavaMail jar包下载地址:http://java.sun.com/products/javamail/downloads/index.html 此篇是紧随上篇文章而封装出来的,阅读本篇章建议先阅读上一篇  -->javamail模拟邮箱功能发送电子邮件-中级实战篇[新增附件发送方法](javamail API电子邮件实例) 在上一篇中,讲解了邮件发送的两个基本方法(HTML和附件),并且引入了两个新类 Multipart 和 BodyPart 两类,整体结构比较紧凑,邮件的服务…
一般来说,如果现实中你有这样一种需求“假如你是褥羊毛的羊毛党,你某日发现了一个app有一个活动,通过邮箱注册账号激活可以领5元红包,而恰恰你手上又有一批邮箱可用,那么批量获取邮箱中的激活链接去激活则是你一个很大工作量的内容”,现在问题已经出现了,那么我在这里给大家提供一些解决方案思路和结果. 首先我想到的是通过一些爬虫技术模拟登录进入邮箱获取邮件内容,我想一般人的解决思路也都是这样的吧.但是这样有一系列的难题,本事爬虫也不会,网上找了一下案例多是别人发的部分代码,而且相互转载的特别多(题外话,真…