【问题标题】:Download Zip files in PHP用 PHP 下载 Zip 文件
【发布时间】:2015-01-01 08:08:55
【问题描述】:

我的网站有一个用户登录功能。 用户是在我的培训机构参加培训课程的用户。 现在培训课程以数字命名,例如2655、2755 等 现在我有一些特定的文件或会话工具包,您可以说用户可以从他的登录名中下载,但只有他应该能够下载他的会话文件。 现在我有 zip 文件。 所以我在 php 名​​称中有一个变量 $sessionno 这也是用户必须下载的文件的相同名称。 所以我的以下事情不起作用。

<a href = " <?php header ('location : $sessionno.zip'); ?> download </a>

所以这行不通,有什么想法吗?

【问题讨论】:

  • 是的,PHP 中的header 绝对不是你想要的,如果你想在锚的href 中找到它。相反,您可能希望echo $sessionno 的值以“.zip”为后缀。 (如果这是您遇到的唯一问题,将添加为答案)
  • 我真的不知道@Turnerj,我应该更详细地描述我的问题吗?
  • 基本上你所拥有的会变成更像:&lt;a href = " &lt;?php echo "$sessionno.zip"; ?&gt; download &lt;/a&gt;
  • 兄弟,非常感谢,它成功了。添加为答案,我会将其标记为答案:) @Turnerj

标签: php session redirect download zip


【解决方案1】:

header 不是您在尝试向锚点上的 href 属性添加路径时要查找的内容。对于您的具体示例,您可能希望使用 echo 将您想要的字符串输出到页面。

<a href="<?php echo "$sessionno.zip"; ?> download </a>

或者,您也可以使用PHP Short Tags(例如&lt;?="$sessionno.zip" ?&gt;),这与我的第一个示例所示的调用echo 相同。短标签可以使代码更简洁,但环境不会启用配置。

为了将来参考,当您想向客户端发送特定的 HTTP 标头时,您可以使用 header。您尝试传递的特定标头是有效标头,只是以不正确的方式使用。如果您希望当前请求告诉客户端您希望他们导航到您指定的 URL,则可以使用该标头。

【讨论】:

  • 我又多了一个疑问,现在我只想在文件可用时显示链接,所以现在我做了以下基本验证,但是当加载页面时,它完全空白,发布我的下面的第二个问题作为答案。 @Turnerj
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-04-10
  • 1970-01-01
  • 2013-11-02
  • 2017-10-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多