您现在的位置是:首页 > cms教程 > phpcms教程phpcms教程
phpcmsV9二次开发获取点击数详解
怜云2025-05-26phpcms教程已有人查阅
导读关于phpcms V9的点击数的使用应该有不少数是直接调用网上搜索到的代码,但是对于一些想要深入研究开发的人来说,看到网上的代码后更是不解,本人这几天看了看
关于phpcms V9的点击数的使用应该有不少数是直接调用网上搜索到的代码,但是对于一些想要深入研究开发的人来说,看到网上的代码后更是不解,本人这几天看了看,了解了一些东西,在这里写出来分享一下,首先先了解一下基础知识
注:hitsid 字段的数据 c-1-2 中 1表示当前模型id 2表示当前文章的id
pc_base::load_model(‘*_model’) 加载数据库模型
pc_base::load_sys_class(‘classname’) 实例化系统类
pc_base::load_app_class(‘classname’,’admin’) 实例化模块类
pc_base::load_sys_func (‘funcfile’) 调用系统函数库
以上是调用模型和实例化对象的四种方法
pc_base::load_model(‘*_model’) 对应加载 根目录\phpcms\model 下面的类文件
pc_base::load_sys_class(‘classname’) 对应加载 根目录\phpcms\libs\classes 下面的文件
pc_base::load_app_class(‘classname’,’admin’) 对应加载 根目录\phpcms\modules\admin\classes 下面的文件
pc_base::load_sys_func (‘funcfile’) 对应加载 根目录\phpcms\libs\functions\
下面讲解一个获取点击数的实例
{pc:content action="lists" catid="$catid" num="25" order="id DESC" page="$page" moreinfo="1"}
{loop $data $r}
{php $db = pc_base::load_model('hits_model'); $_r = $db->get_one(array('hitsid'=>'c-'.$modelid.'-'.$r[id])); $views = $_r[views]; }
{php $comment_tag = pc_base::load_app_class("comment_tag", "comment"); $comment_total = $comment_tag->count(array('commentid'=>'content_'.$catid.'-'.$r[id].'-'.$modelid));}
<li><span class="rt">{date('Y-m-d H:i:s',$r[inputtime])}</span>·<a href="{$r[url]}" target="_blank"{title_style($r[style])}>{$r[title]}</a> 点击:{$views} 评论数:{if $comment_total}{$comment_total}{else}0{/if}</li>{/loop}
{$pages}
{/pc}
其中的第3行是获取点击数的方法我们单独着重解说:
$db = pc_base::load_model('hits_model')
实例化对象为 $db,加载实例化类hit_model,该类的位置在 根目录\phpcms\model\hit_model.class.php文件中
class hits_model extends model
{
public $table_name = ''; public function __construct()
{
$this->db_config = pc_base::load_config('database');
$this->db_setting = 'default';
$this->table_name = 'hits'; parent::__construct(); }}
该类文件加载继承了model类文件并且继承了其内部的方法,所以下面调用get_one()方法
$_r = $db->get_one(array('hitsid'=>'c-'.$modelid.'-'.$r[id]))
调用$db对象中的get_one方法该方法位于hits_model继承的model类中代码如下
final public function get_one($where = '', $data = '*', $order = '', $group = '') {
if (is_array($where)) $where = $this->sqls($where);
return $this->db->get_one($data, $this->table_name, $where, $order, $group);
}
get_one(arr('hitsid'=>'c-'.$modelid.'-'.$r[id]))
方法中传递的数组为数据表v9_hits中的字段的值,其hits表的结构如下此时的$_r为该表中的一条数据 数据表中的字段 views 即为该篇文章的点击次数 所以使用 $_r[views]即可获取点击数啦!!!注:hitsid 字段的数据 c-1-2 中 1表示当前模型id 2表示当前文章的id
本文标签:
很赞哦! ()
下一篇:phpcms站点部署教程
相关教程
图文教程
phpcmsv9中formvalidator无法验证时间插件返回的数据的解决办法
在phpcms中,会引用formvalidator来验证表单,会用 Dynarch Calendar来做时间插件,但是当这两种结合起来的时候,就会出现一个问题
phpcms后台登录验证码不显示的解决方法
在进行phpcmsv9搬家时,在新空间里面进行后台的登陆,却发现后台验证码不显示了,用的是win主机,我们知道验证码是直接生成图片的,而在PHP中要使用图片验证码是要开启gd库才能使用的
PHPCMS与帝国CMS适用性对比哪个好?
phpcms适合多种类型网站,帝国cms专注于内容展示型网站。1.phpcms适用于门户和企业网站,提供丰富插件和后台管理。2.帝国cms适用于新闻和博客,模板引擎强大且自定义功能灵活。
PHPCMSV9视频分享模块SQL注射漏洞分析
其实这个0day前几天就发现了,只是今天放出来是因为我最重要的人。废话不多说了,直接上代码分析\phpcms\modules\video.php(78行代码)
相关源码
-
(自适应响应式)AI智能电子科技产品pbootcms网站模板下载基于PbootCMS内核的响应式模板,为AI智能硬件、电子产品等科技企业打造,通过技术创新实现品牌数字化升级。查看源码 -
(响应式)WordPress主题Ripro9.0博客免扩展二开版RiPro9.0是基于RiPro8.9版本深度二开优化的资源付费主题,源码修正,修复原版多处功能异常,确保系统稳定运行。支持虚拟主机环境部署,无需特殊服务器配置。查看源码 -
(PC+WAP)蓝色钢材加工建筑装修施工材料网站模板下载为钢材加工企业设计的PbootCMS响应式模板,采用PC+WAP双端适配技术,数据实时同步。简洁大气的蓝色工业风格设计,突出钢材加工行业特性,其他制造业用户更换图文内容即可快速应用。查看源码 -
(自适应响应式)超市仓储仓库货架展架网站pbootcms源码下载本模板为货架展架、仓储货架行业量身打造,采用PbootCMS内核开发,充分考虑了货架产品展示和企业形象展示的需求。模板设计简洁大方,突出产品特点,能够有效展示各类货架产品的规格参数和应用场景,帮助访客快速了解企业核心业务和产品优势。查看源码 -
自适应营销型IT网络工作室互联网建站公司pbootcms网站模板为IT网络服务商、建站企业打造的高性能营销门户,基于PbootCMS开源内核深度开发采用HTML5自适应架构,实现PC与手机端数据实时同步交互。查看源码 -
pbootcms响应式蓝色旅游旅行社pbootcms网站源码下载为旅游公司、旅行社定制的响应式网站模板,聚焦旅游线路展示、景点推荐及预约服务场景。采用PbootCMS内核开发,自适应技术确保PC与手机端数据实时同步查看源码
| 分享笔记 (共有 篇笔记) |
