discuz回贴通知插件实现-显示用户状态设置
create table 前缀_模块_逻辑表名 (
`uid` mediumint(8) unsigned NOT NULL,
`isnotice` tinyint not null default 0 comment '0关闭,1开启',
primary key (`uid`)
)engine=myisam charset=utf8;
2、建立好插件的源码目录,并创建功能模块文件
<?php //判断是否被常规请求
defined('IN_DISCUZ') or die('Access Denied'); //规范当前模块的功能列表
$pluginOpList = array('get', 'set'); //判断操作,如果没有或不在功能列表中则设置一个默认操作
if(!isset($_GET['pluginop']) || !in_array($_GET['pluginop'], $pluginOpList)) {
$_GET['pluginop'] = 'get';
}
<?php //判断是否被常规请求
defined('IN_DISCUZ') or die('Access Denied'); class table_forum_post_notice extends discuz_table { //构造方法中,指明表,主键字段,和调用父类构造方法
public function __construct() {
$this->_table = 'forum_post_notice';
$this->_pk = 'uid'; parent::__construct();
}
}
利用模型的方法,获取用户的设置状态
if($_GET['pluginop'] == 'get') {
//获取插件下的某个模型
$mForumPostNotice = C::t('#post_notice#forum_post_notice'); //获取某用户的设置状态
$isNotice = $mForumPostNotice->getNoticeState($_G['uid']);
}
public function getNoticeState($uid = 0) {
if($uid == 0) return 0; //使用discuz的dao类,discuz_database,完成数据库操作
//DB类继承自discuz_database类,在class_core.php文件中
$sql = "SELECT isnotice FROM `%t` WHERE `uid`=%d"; return intval(DB::result_first($sql, array($this->_table, $uid)));
}
<div>
<form method="post" autocomplete="off" action="home.php?mod=spacecp&ac=plugin&id=post_notice:post_set&pluginop=set">
<p class="tbmu mbm">回贴通知</p>
<table cellspacing="0" cellpadding="0" class="tfm">
<tr>
<th>是否开启回贴通知:</th>
<td>
<input type="radio" name="isNotice" value="1" <!--{if $isNotice==1}-->checked<!--{/if}--> />开启
<input type="radio" name="isNotice" value="0" <!--{if $isNotice==0}-->checked<!--{/if}--> />关闭
</td>
</tr>
<tr>
<th> </th>
<td><button type="submit" name="privacysubmit" value="true" class="pn pnc" /><strong>{lang save}</strong></button></td>
</tr>
</table>
</form>
</div>
discuz回贴通知插件实现-显示用户状态设置的更多相关文章
- discuz回贴通知插件实现-页面嵌入点(钩子)
1.如何保证主题被回复时业务代码被执行. 2.获得主题,主题发布者,贴子等信息. 3.discuz发送email邮件. discuz使用嵌入点(钩子)来处理代码的执行时机. 当用户开启插件开发者模 ...
- discuz回贴通知插件实现-获取邮件内容
//自定义钩子函数,命名:模块_函数名_output()或模块_函数名() //一个是模块执行完,模板输出前执行.一个是模块执行前 //post_reply_output函数会在所有post操作中都会 ...
- discuz回贴通知插件实现-插件的多语言
如果涉及到页面的展示,模板,提示信息,通常会 1.建立好需要的文字的翻译 在disucz的data/plugindata目录创建一个插件所使用的语言文件,命名方式为: 插件标识符.lang.php ...
- discuz回贴通知插件实现-用户状态设置
1.获取用户提交数据 discuz通过$_GET来获取全部数据,包括($_GET,$_POST). else if($_GET['pluginop'] == 'set') { //获取用户提交数据 $ ...
- discuz回贴通知插件实现-插件后台管理配置
1.登出discuz后台,再次设计插件 2.使用变量
- discuz回贴通知插件实现-发送邮件
通过discuz的sendmail()来发送邮件 //引入发送邮件的函数文件 include libfile('function/mail'); //设置收件人地址,标题,内容发送邮件 sendmai ...
- discuz回贴通知插件实现-配置邮件服务器
添加smtp服务器,填写相应的smtp服务器,发信人地址,用户名和密码. 填写发件人地址和收件人地址来测试邮件是否发送成功.
- discuz目录结构和插件创建
discuz目录结构 api 外部接口功能实现 archiver 静态文档,静态化所用 config 配置 data 生成的数据 install 安装目录 source 源代码核心目录 |--modu ...
- noty – jQuery通知插件
noty是一个jQuery的通知(信息提示)插件,灵活轻便,是一个非常棒的用于替代传统提示对话框的插件. 当前最新版本为2.1.0: 从https://github.com/needim/noty 可 ...
随机推荐
- keras输出中间层结果,某一层的权重、偏置
转载:https://blog.csdn.net/hahajinbu/article/details/77982721 from keras.models import Sequential,Mode ...
- RBF神经网络和BP神经网络的关系
作者:李瞬生链接:https://www.zhihu.com/question/44328472/answer/128973724来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...
- rman备份恢复命令之switch(转)
一 switch 命令1 switch命令用途更新数据文件名为rman下镜像拷贝时指定的数据文件名更新数据文件名为 set newname 命令指定的名字. 2 switch 命令使用前提条件rman ...
- PHP mysqli的prepare准备语句使用说明
mysqli对prepare的支持对于大访问量的网站是很有好处的,它极大地降低了系统开销,而且保证了创建查询的稳定性和安全性.prepare准备语句分为绑定参数和绑定结果,下面将会一一介绍! (1)绑 ...
- Python3 os模块应用
调用模块的实质是运行python代码,比如a.py文件里有函数f(),那么你在调用a模块的时候,实质是运行了a模块里的函数f(),这个时候内存里就有这个函数了,可以直接用,那是不是随便一个py类型的文 ...
- 洛谷 P1197 [JSOI2008]星球大战
题目描述 很久以前,在一个遥远的星系,一个黑暗的帝国靠着它的超级武器统治者整个星系.某一天,凭着一个偶然的机遇,一支反抗军摧毁了帝国的超级武器,并攻下了星系中几乎所有的星球.这些星球通过特殊的以太隧道 ...
- Tensorflow线程和队列
读取数据 小数量数据读取 这仅用于可以完全加载到存储器中的小的数据集有两种方法: 存储在常数中. 存储在变量中,初始化后,永远不要改变它的值. 使用常数更简单一些,但是会使用更多的内存,因为常数会内联 ...
- linux 关于数据库的部分命令
开启数据库服务 service mysqld start 关闭数据库服务 service mysqld stop 链接数据库 mysql -h localhost -u root -p 回车然后输入密 ...
- jackson的小知识
- Overriding managed version XX for YY
在警告部分,添加<!--$NO-MVN-MAN-VER$-->. <build> <plugins> <plugin> <groupId>o ...