1Next >
pktsandy | 发表于:10-11-03 09:12 [添加收藏] 楼主 [回复] #Top# |
---|---|
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
需求:我需要一个用户组ID来选择显示不同的连接地址或者是访问权限
需要的文件: /user/core.class.php /templater 中的模板!这个自已选择 /system/js/jquery.kc.js 开始了! 所有的标签解析都是由模块文件夹/core.class.php中的 public function tag($name,$inner,$ass,$attrib) 这个函数为入口的!由它去调私有的内部函数.我这里用的是: case 'state':$s=$this->tag_user_state($inner,$attrib);break; 也就是说我在{king:user.state}中加一个内部变量!原来有的是:{king:username/},{king:userid/}.我为她加一个{king:gid/} 所有的标签要被解析都需要模板!我们看:private function tag_user_state($inner,$attrib) 这里你就把模板想像成占位符就行!由解析模板的程序作替换.OK $tmp->assign('username','[USERNAME]'); $tmp->assign('userid','[USERID]'); $tmp->assign('gid','[GID]'); //这个是我加的 $yes=$tmp->output($yes); 前进再前进!巴顿将军的经典思想~加了模板就需要改解析函数了!不扯了KC用的是JS来解析这个模板~因为可能在静态页中操作~哪它的数据来自哪里呢!答:Cookie.Cookie是此函数生成的: public function infoUser($userid='') 我要改的是这行: $array['authcookie']=$userid."t".$res['username']."t".md5($res['username'].$king->config('key')); 如果不想改下面的JS文件就把上面的作替换了!为了防止KC在某些地方需要这些项!所以我要增加.增加完的代码: $array['authcookie']=$userid."t".$res['username']."t".md5($res['username']."t".$king->config('key'))."t".$res['gid'];//cookie中的userpass段 到此user/core.class.php中的修改完成!下面是JS文件 JS文件需要改的函数在这看: $s="<span id="$id">{$no}</span><span id="{$id}_hide" class="none">$yes</span><script type="text/javascript">$.kc_userstate('$id')</script>"; 看到$.kc_userstate('$id')了吧!到JS文件中找kc_userstate 由于我增加了项所以要改下面这个正则: var re=new RegExp('auth_[a-zA-Z0-9]+=(\d+)\%09([a-zA-Z0-9%]{3,200})\%09(\w{32})\%09(\d+)'); 当然了还要改模板的占位符(就是上面所说的解析程序.简单吧就是一个replace) if(auth!==null){ var userid=RegExp.$1; var username=decodeURIComponent(RegExp.$2); var gid=RegExp.$4; //这个我增加的 var auth_obj=$('#'+id+'_hide'); var auth_htm=auth_obj.html(); auth_htm=auth_htm.replace('[USERID]',userid); auth_htm=auth_htm.replace('[USERNAME]',username); auth_htm=auth_htm.replace('[GID]',gid); //这个我增加的 auth_obj.html(auth_htm); auth_obj.show(); $('#'+id).hide(); } 你可能不明白上面的正则!哪你对着看下面的Cookie就可以了 2%09pktmandy%098ecf66e260e84a8bad7970b850cc8731%091 再有看不明白的请留言!有时间我会给予回复
Ta最近还发表过
[分享]
MYSQL5.5的中文手册
(19-03-22)
[分享]
留言的修改版
(18-02-26)
[分享]
KC PHP源代码剖析(慢慢补充)
(16-02-18)
[使用]
新闻内容页的分页
(14-08-24)
[使用]
货栈评论JS动态翻页
(13-11-08)
随机阅读
[其他]
冷冷清清的KC!
(16-05-31)
[使用]
新做的网站,做完了才搞清楚标签这些
(13-08-06)
[疑问]
请问点击数为何永远是1,不会增加?
(12-04-20)
[其他]
国家超级计算深圳中心正式启用 市民云生活由此开户
(11-11-17)
[其他]
讨论一下老大开发PHP用什么IDE?
(11-09-26)
|
pktsandy | 发表于:10-11-03 09:13 沙发 [回复] #Top# |
---|---|
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
下面是KC附带的模板的样子:
{king:user.state id="userstat"} <a href="#" class="k_user_login">登录</a> <a href="#" class="k_user_register">注册</a> {?king:user.state} 当前用户:{king:username/},用户ID:{king:userid/},用户组:{king:gid/}<br/> <a href="{config:system.inst/}user/index.php">用户中心</a> <a href="user/index.php?action=signout">退出</a> {/king:user.state} |
poprock | 发表于:10-11-03 09:39 板凳 [回复] #Top# |
---|---|
![]() ![]() |
好帖啊 好好学习啊 Tks
|
jzhuan366 | 发表于:10-11-19 12:22 4楼 [回复] #Top# |
---|---|
![]() ![]() ![]() |
很好。。bump
|
一点玉米 | 发表于:10-11-19 12:27 5楼 [回复] #Top# |
---|---|
![]() ![]() ![]() ![]() ![]() ![]() |
纯支持!!!
|
rekoe | 发表于:10-12-09 00:35 6楼 [回复] #Top# |
---|---|
![]() ![]() ![]() |
好东西。。。。。。。。。。。。。。。。
|
梦天 | 发表于:10-12-09 00:51 7楼 [回复] #Top# |
---|---|
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
good
|
luke | 发表于:10-12-09 21:21 8楼 [回复] #Top# |
---|---|
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
纯支持
|
1Next >