Simple Down下载站程序外链地址下载次数统计

2014 年 6 月 18 日 211点热度 0人点赞 0条评论

       这几天使用Simple Down v6.2搭一个自己的文件分享站,文件基本放置其它网盘,Simple Down v6.2对于本地服务器上的文件下载可以统计次数,无法统计外链网盘文件的下载次数,花了点时间修改才得以对外链询问下载页次数统计功能实现。

       PHP都是自己研究着玩,水平有限,此修改方法也许并不太完美。 

       查看内容页源码发现“下载文件”链接对于站内文件及外链网盘文件显示是不同的,站内文件会显示如:http://panadmin.yangjinyou.com/simple/down/4的下接下载链接,下载时可统计下载次数;而外链网盘的文件内容页直接显示外链,无法统计下载次数。

       为了达到统计效果,修改以下两个文件内容:

一、root/views/view.php

       找到以下内容:

<?php if ($news_item['fileext'] == "net") { ?>
<a href="<?php echo $news_item['fileurl'] ?>" target="_black">立即下载</a>
<?php } else { ?>
<a href="<?php echo base_url()."simple/down/".$news_item['id'] ?>">立即下载</a>
<?php } ?>

修改为

<?php if ($news_item['fileext'] == "net") { ?>
<a href="<?php echo base_url()."simple/down/".$news_item['id'] ?>" target="_blank">下载页面</a>
<?php } else { ?>
<a href="<?php echo base_url()."simple/down/".$news_item['id'] ?>">立即下载</a>
<?php } ?>

       红色部分是进行修改的地方,将站内文件与外链网盘文件的显示下载地址改为一致。

二、root/controllers/simple.php

       站内文件下载使用force_download强制下载,如数据库保存的文件路径只是外链网盘文件的下载页面,我们需要的是打开下载页面,无法使用force_download来处理,加入判断,使用header来重定向到指定页面。

       找到三处相同的以下内容:

force_download($news_item['filename'], $data);

修改为

if ($news_item['fileext'] == "net") 

$newurl = $news_item['fileurl'];
header("Location:$newurl");
exit();
} else {

force_download($news_item['filename'], $data);
}

 

Kenny

脱离IT行业好多年,这个博客可以称之为不务正业,或者是最后的倔强!

文章评论