首页 技术 正文
技术 2022年11月15日
0 收藏 879 点赞 2,678 浏览 1298 个字

PHP+Mysql统计文件下载次数实例,实现的原理也很简单,是通过前台点击链接download.php传参id,来更新点击次数。

PHP+Mysql统计文件下载次数实例

获取文件列表:

<?php
require 'conn.php'; $query = mysql_query("SELECT * FROM downloads");
$lists = array();
while ($row = mysql_fetch_assoc($query)) {
$lists[] = $row;
}
?>

读取文件列表,并加上download.php链接和参数id:

<ul class="filelist">
<?php foreach ($lists as $v) { ?>
<li><a href="download.php?id=<?php echo $v['id'] ?>" rel="external nofollow" ><?php echo $v['filename'] ?><span class="downcount" title="下载次数"><?php echo $v['downloads'] ?></span><span class="download">点击下载</span></a></li>
<?php } ?>
</ul>

点击下载按钮,累加文件次数:

$(function() {
$('ul.filelist a').live('click', function() {
var count = $('.downcount', this);
count.text(parseInt(count.text()) + 1);
});
});

download.php文件源码:

<?php
$id = (int) $_GET['id']; if (!isset($id) || $id == 0)
die('参数错误!');
$query = mysql_query("select * from downloads where id='$id'");
$row = mysql_fetch_array($query);
if (!$row)
exit;
$filename = iconv('UTF-8', 'GBK', $row['filename']); //中文名称注意转换编码
$savename = $row['savename']; //实际在服务器上的保存名称
$myfile = 'files/' . $savename; //文件 if (file_exists($myfile)) {
mysql_query("update downloads set downloads=downloads+1 where id='$id'");
$file = @ fopen($myfile, "r");
header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=" . $filename);
while (!feof($file)) {
echo fread($file, 50000);
}
fclose($file);
exit;
} else {
echo '文件不存在!';
}
?>

本文转自:https://www.sucaihuo.com/php/224.html 转载请注明出处!

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,086
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,561
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,410
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,183
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,820
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,903