Mozilla Firefox无法理解带空格的文件

时间:2012-10-02 16:03:14

标签: php file firefox file-upload download

我上传到网站的文件可能包含空格,例如:

    file name 1.wav

上传时会正常显示,但是当尝试从Chrome和Firefox下载文件时,我会得到以下结果:

  Chrome downloaded: file name 1.wav (perfect)
  firefox downloaded: file (bad) 

名称1.wav已从名称中删除。 PHP中是否有任何特定的功能可以解决这个问题?

CODE:

   <?= str_replace(array("'",'"'), array("&#39;","&quot;"), stripslashes($sFileTitle)) ?>', '<?=$f['fileExtension']?>'

当我检查应该下载文件的锚标记上的元素时,会出现这种情况:

  <a title="file name 1.wav" fileid="254" class="docLink">file name 1.wav</a>

我使用JQuery重定向到正确的路径。

FIX:

添加urlencode($ file)修复它但引发了一个新问题。现在文件名为

    file name 1.wav
下载时

变为:

    file+name+1.wav

下载后可以用空格替换吗? urldecode没有工作

解决方案:

如果其他人遇到同样的问题我是如何解决的:

而不是urlencode / decode我只是这样做了:

 '"' . stripslashes($file) . '"'

并修复了它

1 个答案:

答案 0 :(得分:3)

<?php
      header("Content-Disposition: attachment; filename=\"$filename\"");
?>