欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

这段代码如何加?

程序员文章站 2022-06-16 08:52:50
...
本题是关于php做的cms管理系统discuz的问题,所以回答本题要搞过discuz的人.
问题是这样:我想把系统自带的尾部统计在线人数的代码放在头部,所以我就复制了这段代码到头部中,但是奇怪的是显示为乱码,起码以为是条件判断的原因,后来多次检查,感觉不是.
下面的代码我是我复制的,不知为啥放在head.htm中就是不行呢,应该如何写才是正确的呢?
			
这段代码如何加?

{lang onlinemember} - $onlinenum {lang onlines} - $membercount {lang index_members}($invisiblecount {lang index_invisibles}), $guestcount {lang index_guests} - {lang index_mostonlines} $onlineinfo[0] {lang on} $onlineinfo[1].

这段代码如何加?

{lang onlinemember} {lang onlinemember} - {lang total} $onlinenum {lang onlines} - $membercount {lang index_members},$guestcount {lang index_guests} - {lang index_mostonlines} $onlineinfo[0] {lang on} $onlineinfo[1].

$_G[cache][onlinelist][legend]


回复讨论(解决方案)

下图是复制上面代码后的结果

清缓存看看。

清缓存看看。


请缓存这是最起码的常识吧!

统计在线人数,那是首页的功能,如:$onlinenum,$invisiblecount等,都是在\source\module\forum\forum_index.php里面定义的
而header.htm是所有页面都要引用的,里面的变量都是在初始化的时候取出放到了$_G里面,所以,你直接copy的代码不生效
有两种办法:
1>在source\class\discuz\discuz_application.php中初始化的时候查询数据库,并放到$_G中(不建议新手这样做)
2>在header.htm中调用一个函数,如:,getnolineinfo()方法在source\function\function_core.php中自己定义,里面具体的实现代码,请参考source\module\forum\forum_index.php中178行左右的if里面的代码

相关标签: 代码 这段