Dedecms的软件模型,大家都知道,可能用到的人不多,因为一些专业的下载网站都在使用新云等专用下载系统,其实dedecms的软件模型还是不错的,并且有诸多好处,例如和文章系统共用一个后台,二级域名绑定等,为此烈火也使用dedecms新建了dede58源码频道,总体感觉不错,唯一不足的是dedecms显示的下载次数是网页的PV值,而不是真正的下载次数。
经过一翻推敲,写出一个可以显示真实下载次数的代码,修改方法如下:
1、新建个downclick.php 保存于include目录下?
内容如下?
$a=$_COOKIE["a"];?
?>
2、打开plusdownload.php?
找到?
$dsql->Close();?
$cu->Close();?
require_once($cfg_basedir.$cfg_templets_dir."/plus/download_links_templet.htm");?
?
替换为:?
?
//下面是通过cookie传递aid变量到cookie,用downclick.php来读取.
setcookie("a","$aid");
//完毕
//下面是读取下载的点击数,typeid是栏目id,请查看自己的数据库
if ($arcRow['typeid']>=13 and $arcRow['typeid'] <=17)
{
$row=$dsql->GetOne("select * from dede_addonsoft where aid='$aid'");
$showclick=$row['click'];
$dsql->Close();
}
$dsql->Close();
$cu->Close();
//读取完毕
require_once($cfg_basedir.$cfg_templets_dir."/plus/download_links_templet.htm");
|
3、找到?
$link = base64_decode($link);
在这行之前加入?
//下面是更新软件下载的点击数?
require_once(dirname(__FILE__)."/../include/downclick.php");?
$dsql = new DedeSql(false); //liehuo.net
$dsql->ExecuteNoneQuery("Update dede_addonsoft set click=click+1 where aid='$a'");?
//更新完毕?
//下面是关闭数据库连接?
$dsql->Close();
4、打开templetsplusdownload_links_templet.htm?
在合适的地方加入?
已被下载 =$showclick?> 次?
5、用phpmyadmin在数据库里执行以下sql?
ALTER TABLE `dede_addonsoft` ADD `click` INT( 11 ) UNSIGNED NOT NULL DEFAULT '1' AFTER `softlinks` ;
完。 (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|