PHP将私有zip文件发送到浏览器

时间:2014-05-21 02:24:20

标签: php

我只想在用户购买后立即使用该zip文件,并且只能下载一次

该文件在public_html之外,它不公开,但我无法知道如何将文件发送到浏览器。

使用本指南:Idiot-proof, cross-browser force download in PHP如何让它与非公开访问zip文件一起使用?我尝试设置文件的路径,但它没有工作。 (我使用浏览器访问路径对其进行了测试,但确实有效)

至于另一个问题,只允许下载一次,我正在做以下事情:

  1. 用户访问唯一下载页面
  2. 检查产品是否已下载
  3. 更新mySQL说它已被下载
  4. 发送标题以下载文件

1 个答案:

答案 0 :(得分:0)

用户注册时,您可以将zip文件复制到指定位置。 zip文件的新名称应该是用户名,以便它可以是唯一的。用户下载后,您可以删除该文件。由于文件在注册时已复制一次,因此复制过程事件不会再次发生。

注册时:

copy($main_copy, "/download/balh_".$username.".zip");

发布下载:

unlink("/download/balh_".$username.".zip");