您现在的位置是:首页 > 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站点部署教程
相关教程
图文教程
phpcms修改域名的方法
可以直接修改数据库中的信息,在phpmysql上进行管理。具体方法如下:首先使用php虚拟主机自带的phpmyadmin工具对网站mysql数据库进行备份;
织梦cms、帝国cms、PHPcms优缺点分析
php才是建站的主流,cms这类程序又是用的最多的,占据主流的cms主要就是织梦,帝国,phpcms这三种的,这三个程序都是开源程序。国内用户众多。一、从美观性来说(以官方默认模版为准
phpcmsv9后台登录验证码不显示的解决方法
phpcmsv9后台登录验证码不显示怎么办?PhpcmsV9管理后台登陆验证码不显示的解决方法最近有朋友遇到网站迁移后管理后台登陆验证码不显示的问题
PHPCMSv9漏洞宽字节注入的修复方法
漏洞描述:phpcmsv9.5.9以后版本开始默认使用mysqli支持,在phpcms/modules/pay/respond.php中,因为代码逻辑不够严谨,导致宽字节注入。
相关源码
-
(自适应)工业机械制造设备网站pbootcms模板下载为机械制造、工业设备类企业设计,特别适合各类机械设备、生产线、工业自动化产品展示。采用响应式技术,确保在不同设备上都能清晰展示机械产品的技术参数和细节特点。查看源码 -
(自适应)蓝色厨卫厨房水龙头阀门水槽设备源码下载基于PbootCMS内核开发,深度适配厨卫设备行业特性。通过精准的产品展示模块与水效标识专区设计,有效呈现五金件工艺细节。响应式布局确保从手机到平板都能展示金属质感与水流动态效果。查看源码 -
(自适应响应式)法律咨询律师事务所法务pbootcms源码下载为律师事务所、法律咨询机构设计,特别适合展示法律服务、律师团队和成功案例。采用响应式技术,确保在不同设备上都能提供专业的法律信息展示和咨询服务。查看源码 -
帝国CMS7.5小说推荐公众号导航带wap手机站+带采集工具本模板为小说导航类网站设计开发,基于帝国CMS7.5内核构建,针对小说阅读领域的分类聚合需求进行深度优化。通过智能分类系统和用户行为分析,实现小说资源的精准推荐与导航功能。查看源码 -
(自适应)绿色宠物门诊兽医行业网站模板该绿色清爽风格网站模板专为宠物门诊与兽医诊所设计,基于PbootCMS内核开发,采用响应式布局确保手机、PC等多端体验一致,帮助宠物医疗机构高效构建线上服务平台。查看源码 -
(自适应)中英双语配线器材扎带线卡网站pbootcms模板免费下载为线缆管理、电气配线领域打造的响应式网站模板,采用PbootCMS内核开发,可快速搭建企业级产品展示平台,数据实时同步管理。查看源码
| 分享笔记 (共有 篇笔记) |