gpt4 book ai didi

php - 一次性下载密码

转载 作者:可可西里 更新时间:2023-11-01 00:24:56 25 4
gpt4 key购买 nike

实现一次性密码下载文件的最佳方法是什么?最初我考虑使用 PHP,为用户分配密码,然后在他们登录时删除帐户。我会将该帐户保存在一个文件中,因为我不希望在任何给定时间拥有超过少数有效用户。我是否需要跟踪 session ,或者是否有一种简单的方法可以通过单个站点完成此操作?

哦,我不能使用外部网站,因为数据很敏感,必须保存在本地,我也不能下载任何新软件,因此仅限于 HTML、JavaScript 和 PHP(我相信)。

最佳答案

几乎只是 Ilmari Karonen 和 martinstoeckli 的答案的组合,但有更多细节。

使用这种数据库表:

temp_passes

uuid | createTime | expireTime | filename
------------------------------------------
123-4 | 1326735047 | 1327735047 | myDisk.iso

不知何故,您为用户生成了一个 UUID,并将其插入到数据库中。然后,在提供下载链接时,您可以像这样使用 UUID:

http://example.com/download.php?id=123-4

或者,有一个密码字段,用户必须在其中输入他们的 ID,并将其提交到 download.php。无论哪种方式:

  1. 根据数据库验证 ID,确保它存在且未过期。
  2. 从数据库中删除ID,使其无法再次使用。
  3. 让 PHP 生成下载,可能使用 readFile() .

您可以选择在下载完成之前或之后删除 ID,这由您决定。但是,如果它是一个大文件,您可能希望先执行此操作,这样其他人就无法使用相同的“密码”同时进行多个下载。

关于php - 一次性下载密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8883827/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com