Php 下载时缺少.zip扩展名
我有一个网站,允许客户下载他们购买的文件 将向客户发送一个链接,该链接将引导他们进入一个页面,该页面将检查该链接是否有效,如果有效,则允许他们下载其产品 以下是链接示例: 很多客户都说,当他们下载时,.zip扩展名丢失了,我找不到问题所在,它在我的机器上运行良好,除非我使用“另存为”,但即使这样,有些人也有问题 有没有办法让他们下载文件,即使按“另存为”也保留.zip扩展名 这是我用来将它们重定向到下载的代码Php 下载时缺少.zip扩展名,php,file,download,Php,File,Download,我有一个网站,允许客户下载他们购买的文件 将向客户发送一个链接,该链接将引导他们进入一个页面,该页面将检查该链接是否有效,如果有效,则允许他们下载其产品 以下是链接示例: 很多客户都说,当他们下载时,.zip扩展名丢失了,我找不到问题所在,它在我的机器上运行良好,除非我使用“另存为”,但即使这样,有些人也有问题 有没有办法让他们下载文件,即使按“另存为”也保留.zip扩展名 这是我用来将它们重定向到下载的代码 header("Cache-Control: public"); header("Co
header("Cache-Control: public");
header("Content-Description: File Transfer");
header("Content-Disposition: attachment; filename=$originalfilename");
header("Content-Type: application/zip");
header("Content-Transfer-Encoding: binary");
感谢您的帮助。添加一个看起来像文件名的伪GET参数
...&fname=/foo.zip
添加一个看起来像文件名的伪GET参数
...&fname=/foo.zip
问题可能是某些文件有空格,在这种情况下,您当前的代码只使用第一部分,因此失去了扩展部分,为了防止出现这种错误,您必须将文件名用双引号括起来,如下所示:
header('Content-Disposition: attachment; filename="'.$originalfilename.'"');
问题可能是某些文件有空格,在这种情况下,您当前的代码只使用第一部分,因此失去了扩展部分,为了防止出现这种错误,您必须将文件名用双引号括起来,如下所示:
header('Content-Disposition: attachment; filename="'.$originalfilename.'"');
我敢打赌,这与文件名中有空格有关,因为文件头中的文件名是
PSP\u Tubes\u PSP\u Tubes\u Lisa\u Cree\u礼物
,文件想另存为PSP\u Tubes\u PSP\u Tubes\u Lisa\u Cree\u
,我敢打赌这与文件中有空格有关标题中的文件名是PSP\u Tubes\u PSP\u Tubes\u Lisa\u Cree\u the Gift\u 6932.zip
,文件要另存为PSP\u Tubes\u Lisa\u Cree\u the
var\u dump($originalfilename)的内容代码>外观?您能检查原始文件名是否有扩展名吗?他们使用的是internet explorer吗?这种特殊的网络浏览器有这样做的讨厌习惯。以及其他一些令人讨厌的习惯。谢谢你的回复!是的,原始文件名有扩展名,我已经检查过了。。。Firefox似乎也在这样做,var_转储什么($originalfilename)代码>外观?您能检查原始文件名是否有扩展名吗?他们使用的是internet explorer吗?这种特殊的网络浏览器有这样做的讨厌习惯。以及其他一些令人讨厌的习惯。谢谢你的回复!是的,原始文件名有扩展名,我已经检查过了。。。Firefox似乎也在这么做……谢谢!我没有想到它是空间,它似乎正在为他们中的一些人工作。。。我仍然有一个使用IE的用户存在同样的问题,尽管.zip扩展名被删除了。非常感谢您抽出时间。谢谢!我没有想到它是空间,它似乎正在为他们中的一些人工作。。。我仍然有一个使用IE的用户存在同样的问题,尽管.zip扩展名被删除了。非常感谢你抽出时间。