在线建站培训
您的位置: 魔客吧 cms教程 discuz教程 查看内容

discuz游客表态修改及内部数据调用方法

2017-11-18 10:35 | 发布者: moke | 栏目:discuz教程

本博文是为博友小宋解答问题,其问题如下:

前一段时间看了你制作的门户文章的表态功能, 有一个问题就是点击了之后需要重新刷新一下才能显示投票.
这个discuz自带的空间博客上面有游客表态功能,你看看能把代码移植过去吧
==================================================第二个想法:it618开发了一个帖子内部游客表态功能的插件,这个插件在门户文章不能实现..你看看能把这个插件功能移植在首页文章里面===============
第三个问题,discuz的门户的栏目比较多,我想在portal_view.htm 模版中修改一处,调出最新的10条数据.是不是需要在portal_view.php中写上mysql的调用代码,然后在view.htm中用模版展示出来
==================================================谢谢



关于表态的问题,本文采用session的方法做一下表态的限制。

本文接上次discuz允许游客表态的方法来说,注释掉的代码还跟上次的一样。注释完成后,修改如下:

找到文件:/source/include/spacecp/spacecp_click.php

在文件顶部,即:

[代码]php代码:

if(!defined('IN_DISCUZ')) {	exit('Access Denied');}

上面加入一句话:

[代码]php代码:

session_start(); 

开启session。然后最后注释掉的:

[代码]php代码:

/*if(C::t('home_clickuser')->count_by_uid_id_idtype($space['uid'], $id, $idtype)) {		showmessage('click_have');	}*/

这句话下面加入:

[代码]php代码:

if($_SESSION['vote'] == session_id()){		showmessage('click_have');	}	$_SESSION['vote'] = session_id();

这样就可以通过用户访问网站的session来做表态的限制,演示查看本博客表态功能。

其实还可以通过IP来做限制,可以自己查看下相关资料。方法有很多,在于自己的挖掘。

至于需要刷新之后,才能显示,是因为表态之后,本页没有刷新,修改方法,可以参考下ajax来实现,本文不再细说。

你说的空间博客上的表态,我没有注意到有这么一个功能呢。

第二个问题,没有用过这个插件本文不说其修改方法了。

第三个问题

其实不用自己来写sql语句,discuz提供了一个内部调用数据的功能。

进入网站后台

魔客吧温馨提示:在魔客吧有许多的精品 DZ模板 ,如果你有需要,那么赶快去下载吧!

最新分享资源

最新评论

验证码 换一个