建立文件:
\gtmj.php
\source\module\cat\gtmj_list.php
\source\module\cat\gtmj_publish.php
\template\default\cat\gtmj_list.htm
\template\default\cat\gtmj_publish.htm
gtmj.php文件内容:
<?php
// 定义应用 ID 全局记录当前用户所在位置,不需要可定义为0 不要省略
define('APPTYPEID', 0);
define('CURSCRIPT', 'gtmj');
//====================================
// 基础文件引入
//====================================
require './source/class/class_core.php';
$discuz = & discuz_core::instance();
//====================================
//模块定义以及模块缓存定义
//====================================
$modarray = array('gtmj_list', 'gtmj_publish');
// 判断 $mod 的合法性
$mod = !in_array($discuz->var['mod'], $modarray) ? 'gtmj_list' : $discuz->var['mod'];
//定义当前模块常量
define('CURMODULE', $mod);
//====================================
// 加载核心处理,各程序入口文件代码相同
//====================================
$discuz->init();
//====================================
// 以下内容由各个模块根据需要自行撰写程序运行环境
// 位于核心处理与mod加载之前,可以处理一些各mod共用的一些数据,或入口权限判断等...
// 由于本功能只需要游客做发布的限制,所以判断就要放到module/cat/gtmj_publish.php中去了。
//====================================
//===================================
//加载 mod
//===================================
require DISCUZ_ROOT.'./source/module/cat/'.$mod.'.php';
?>
\source\module\cat\gtmj_list.php文件内容
<?php
// mod文件只能被入口文件引用,不能直接访问
if(!defined('IN_DISCUZ')) {
exit('Access Denied');
}
//初始化当前页码
$page = empty($_GET['page'])?1:intval($_GET['page']);
if($page<1) $page=1;
//分页
$perpage = 20;
$start = ($page-1)*$perpage;
//获取当前页的留言数据
$gtmj_list = array();
//$query = DB::query("SELECT * FROM ".DB::table('gtmj')." WHERE 1 ORDER BY ID DESC LIMIT $start, $perpage");
$query = DB::query("SELECT * FROM ".DB::table('gtmj')." WHERE 1 ORDER BY ID DESC LIMIT $start, $perpage");
while($gtmj = DB::fetch($query)) {
//$gtmj['ID'] = dgmdate($mood['dateline'], 'u');
$gtmj_list[] = $gtmj;
}
//获得一个简单的分页,只有上一页和下一页,这个不需要count()数据表中的所有记录
$multi = simplepage(count($gtmj_list), $perpage, $page, 'gtmj.php?mod=gtmj_list');
//数据准备完毕,引入相应的模板,准备输出
include_once template("cat/gtmj_list");
?>
\source\module\cat\gtmj_publish.php
<?php
// mod文件只能被入口文件引用,不能直接访问
if(!defined('IN_DISCUZ')) {
exit('Access Denied');
}
// 游客不能发表心情的判断
if(!$_G['uid']) {
showmessage('抱歉,您尚未登录,无法进行此操作', '', array(), array('login' => 1));
}
if(submitcheck('submit')) {
$gj = cutstr(dhtmlspecialchars(stripslashes($_POST['gj'])), 150, ''); //截取150个字节的内容
$mj = cutstr(dhtmlspecialchars(stripslashes($_POST['mj'])), 150, ''); //截取150个字节的内容
DB::query("INSERT INTO ".DB::table('gtmj')." (uid, USERNAME, GJ, MJ) VALUES ('$_G[UID]', '$_G[USERNAME]', '".$gj."', '.$mj.')");
showmessage('发表成功。', 'gtmj.php?mod=gtmj_list');
}
//显示发布表单
include_once template("cat/gtmj_publish");
?>
\template\default\cat\gtmj_list.htm文件内容:
<!--//说明: 显示公共头部模板-->
<!--{template common/header}-->
<!--//说明: 开始显示留言-->
<div id="ct" class="wp cl">
<h1 class="mt">国土面积 - <!--{if $_G[uid]}--><a href="gtmj.php?mod=gtmj_publish">增加记录</a><!--{/if}--></h1>
<div class="bm">
<!--{if $gtmj_list}-->
<!--//说明: loop 循环一个数组 相当于foreach(){}-->
<!--{loop $gtmj_list $gtmj}-->
<a href="home.php?mod=space&uid=$gtmj[UID]" target="_blank"><!--{avatar($value[authorid],small)}--></a><br>
<a href="home.php?mod=space&uid=$gtmj[UID]" title="$gtmj[USERNAME]" target="_blank" class="xi2">$gtmj[USERNAME]</a>
<br>
国家: $gtmj[GJ]-面积: $gtmj[MJ]
<hr>
<!--{/loop}-->
<!--//说明: 显示准备好的分页链接-->
$multi
<!--{else}-->
<p class="emp">暂时没有记录...</p>
<!--{/if}-->
</div>
</div>
<!--//说明: 显示公共尾部模板-->
<!--{template common/footer}-->
\template\default\cat\gtmj_publish.htm文件内容:
<!--//说明: 显示公共头部模板-->
<!--{template common/header}-->
<!--//说明: 开始显示表单-->
<div id="ct" class="wp cl">
<h1 class="mt"><a href="gtmj.php?mod=gtmj_list">国土面积</a> - 增加记录</h1>
<div class="bm">
<form method="post" action="gtmj.php?mod=gtmj_publish" class="pns">
<input type="hidden" name="formhash" id="formhash" value="{FORMHASH}" />
<!--FORMHASH 自动产生,submitcheck()函数要判断这个值-->
<textarea name="gj"></textarea><br><br>
<textarea name="mj"></textarea><br><br>
<input type="submit" class="pn vm" name="submit" value="发表" />
</form>
</div>
</div>
<!--//说明: 显示公共尾部模板-->
<!--{template common/footer}-->