mysql - php怎么记录用户下载了一个文件?
阿神
阿神 2017-04-10 17:15:03
[PHP讨论组]

类似用百度文库的时候,下载一个文件,这个文件需要1个下载券,当第一次下载的时候,就会扣掉1个下载券,当这个帐号再次下载这个文件的时候,就不会再扣下载券。

我想会有一个download_records表,和users表进行一对多关联,每下载一个文件,就往download_records表写入一条记录,像这样:

id   download_record  user_id
1    ...              123
2    ...              123

那么,这个download_record字段该记录什么东西呢,是这个文件的路径+文件名吗?还是其他什么东西呢?

阿神
阿神

闭关修行中......

全部回复(6)
ringa_lee

你把账号 跟 下载文件建立一个关联表

大家讲道理

思路:
不能使用直接下载,就是说下载的时候不给予解析。禁止 服务器地址/av.avi 这种下载。换成xxx.php?filename=av.avi这样去解析下载。然后在xxx.php写业务逻辑就好了

巴扎黑

可以记录你的文件ID 如果你的文件有多种类型并保存多个地方 这个ID可以重复 再加一个type记录文件类型
文件类型跟ID加唯一限制

ringa_lee

题主,你的下载的资源是不是后台上传的?后台上传的话应该是有ID的,你可以在资源下载表记录资源ID,用户ID,下载时间==,其他就根据项目需求去定咯

ringa_lee

记录文件id

id    article_id    user_id   down_num   

下载时判断用户是否下载过,下载过就不扣积分,down_num是下载次数,当然也可以没下载一次增加一条记录,就不需要这个字段

迷茫

我建议建立文件表用户表的多对多映射。
建一张表只记录文件id和用户id。
当然如果你希望在一定时间后下载到期,可以在增加一个时间戳字段

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号