-
资料库
http://faq.comsenz.com/library
查看全部 -
分页查询数据
$curpage = (int)$_GET['page'] ?? 1; $perpage = (int)$_GET['num'] ?? 10; // 控制器 $model = C::t('tool_info'); $num = $model->count(); $tools = $model->list($curpage, $perpage); $page_html = multi($num, $perpage, $curpage, 'tool.php?mod=index&action=list'); var_dump($tools); echo $page_html; // 模型 public function list($page,$perpage=10) { $result = DB::fetch_all('SELECT * FROM %t'.' ORDER BY '.DB::order('tool_id','desc').DB::limit(($page-1)*$perpage,$perpage),[$this->_table]); return $result; }
查看全部 -
注意我们在创建表的时候是有表前缀的,表前缀是多少,这根据你在安装Discuz时指定的表前缀为例。
如果不知道表前缀是多少,可以看下现在数据库中表名前缀是多少就知道了
查看全部 -
在模型类中编写查询方法,在控制器中调用模型中的方法即可。
// 实例化模型类 C::t('文件名')
查看全部 -
Discuz 中的模型文件放在/source/class/table目录下
模型文件名由”table_表名“组成
编写模型文件类
// 安全验证 if(!defined('IN_DISCUZ')) { exit('Access Denied'); } // 表类 class table_common_admincp_cmenu extends discuz_table { public function __construct() { // 表名 $this->_table = 'common_admincp_cmenu'; // 主键名 $this->_pk = 'id'; // 调用父类方法 parent::__construct(); } }
查看全部 -
模板文件的头部文件,和尾部文件需要自己手动引入。
这里举例/template/PHPchina/tool/index.htm文件引入头部、尾部文件
#引入头部文件 <!--{template common/header}--> <link rel="stylesheet" href="static/css/tool/tools.css" /> ...... # 引入尾部文件 <!--{template common/footer}-->
查看全部 -
在控制器中引入模板文件
include template('tool/index')
引入的模板后缀为.htm, 这个模板放在/template/PHPchina\tool目录下,这里的PHPChina是一个自定义风格的目录。
查看全部 -
建立控制器文件。
在source/module目录下建立以入口文件名相同的目录。
在上面建立的目录下建立 “入口文件_mode.php“格式的文件
在上一步文件中定义安全常量
if(!defined('IN_DISCUZ')) { exit('Access Denied'); }
使用if/else 语句来区分action 参数,编写业务代码。
if(!defined('IN_DISCUZ')) { exit('Access Denied'); } $action = $_GET['action'] ?? 'index'; if($action == 'index'){ echo '这是工具的首页'; }elseif($action == 'upload'){ echo '这是上传的首页'; }
查看全部 -
新建控制器入口文件。
// 定义常量 define('CURSCRIPT',1); define('APPTYPE',0); // 引入核心类库 require './source/class/class_core.php'; // 初始化核心类库 $discuz = C::app(); $discuz->init_cron = false; $discuz->init(); // 引入第三方类库 // 使用的时候再引入 // 逻辑分发处理 $mod = !empty($_GET['mod']) ? $_GET['mod'] : 'index'; if (empty($mod) || !in_array($mod, array('index'))) { exit('Access Denied'); } //定义常量 define('CURMODULE',$mod); // 定义全局常量 $_G['disabledwithauto'] = 1; // 根据Mod参数分发到对应的模块 require_once libfile('tool/'.$mod, 'module');
查看全部 -
Discuz是一个面向过程的PHP框架,建立控制器入口文件,需要的操作也不一样,这些操作简单的记录一下,方便后期回顾。
具体如何建立控制器文件,可以看截图
查看全部 -
如果我们要更改系统已经存在的css,可以在模板目录下建立以extend_为前缀的源文件名的CSS文件即可。
我们以添加新的common.css文件举例,如何进行操作,比如提添加一个/template/default/common/common.css文件。
在自己的模板目录下新建一个extend_common.css文件,文件路径为/template/new/common/extend_common.css
在文件中编写a{color:red}
生成的css文件,需要在discuz后台更新css缓存才能生效,在后台切换模板处更新缓存。
扩展的css文件会追加到css缓存文件中,扩展css文件加载顺序是先加载默认的css文件,然后再加载扩展的css文件
查看全部 -
Discus 读取模板是有自己的流程的
首先会读取自己定义的目录下的common目录中的文件,如果该目录下的文件不存在,会到default默认目录下的common目录中读取指定的文件
查看全部 -
啊查看全部
-
条件判断 if
查看全部 -
模板语法1
查看全部 -
实现分页2
查看全部 -
实现分页1
查看全部 -
实现分页。
查看全部 -
fetch操作
查看全部 -
update操作
查看全部 -
delete操作
查看全部 -
insert操作
查看全部 -
dz数据库其他操作
查看全部
举报