卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章64334本站已运行4115

dedecms二次开发全站文章收藏总次数统计

需要对网站所有文章的收藏量统计,但是织梦默认没有这个统计功能,下面就说大家详细研发过程!

此过程须要对数据库展开操作,需要获得数据库权限,建议大家在操作前最好备份一下数据库以及文件。下面就是详细步骤:

第一步、新建数据库表中dede_stows,我们以轻易复制dede_downloads数据表为例

备注:dede为数据库表前缀,恳请改成你自己的表中前缀!

然后将dede_downloads中的downloads名称更改为stows,再将hash字段删掉;

新建一个名称为title的字段:
类型:text
长度:252
整理:gbk_chinese_ci(你的网站编码,如果是utf-8,请选择utf-8)
空:否
额外:留空

第二步、打开/plus/stow.php文件,将一下代码填入最后的 ?> 字符前面:
代码如下:

//更新收藏次数
$title = ($arctitle);
$stows = 0;
$rs = $dsql->ExecuteNoneQuery2("UPDATE `dede_stows` SET stows = stows+1 WHERE title='$title' ");
if($rs <= 0)
{
$query = " INSERT INTO `dede_stows`(`title`, `id`, `stows`) VALUES('$title', '$id', 1); ";
$dsql->ExecNoneQuery($query);
}

第三步、再新建一个php文件命名为stows.php,代码如下:     

<?php
/*
* 收藏总次数统计数据
*/
require_once(dirname(__FILE__)."/../include/common.inc.php");
$aid = (isset($aid) && is_numeric($aid)) ? $aid : 0;
$row = $dsql->GetOne("SELECT SUM(stows) AS totals FROM `dede_stows` WHERE id='$aid' ");
if(empty($row['totals'])) $row['totals'] = 0;
echo "document.write('{$row['totals']}');";
exit();

注意:上面两段代码里面的dede_字符都换成自己的数据库后缀       

完成后只要在你需要显示统计的页面加入如下代码即可显示统计数据总次数:

卓越飞翔博客
上一篇: mysql 8.0.11安装教程
下一篇: 织梦CMS二次开发列表AJAX按条件排序
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏