PHP下载不适用于&

用户名

我具有此php函数,可从我的public_html下载文件。

function download($file){
$dir = "RepList/";
$path = $dir.$file;

if(!file_exists($path))
{
    die("Error : The file does not exists !");
    }else{
    header("Cache-Control: public");
    header("Content-Description: File Transfer");
    header("Content-Disposition: attachment; filename=$file");
    header("Content-Typr: application/w3g");
    header("Content-Transfer-Encoding: binary");

    readfile($path);
    }
}

if (isset($_GET['download']))
{
    if(!empty($_GET['download']))
    {
        $file = $_GET['download'];
        download($file);
    }
}

对于下载,我使用类似:

<a class="download"  id="download'.$i.'_" href="../download.php?download='.$cc->EList[$i]->getEName().'" target="_blank">Download</a>

如果我的文件名中带有“&”符号,我将收到“错误:该文件不存在!”。我像1年前一样从事此工作,现在我想修复该错误。

有什么建议吗?简单而快速的事情。

马尔辛·纳比亚列克(MarcinNabiałek)

您可能应该使用urlencode()function并将创建HTML链接更改为:

<a class="download"  id="download'.$i.'_" href="../download.php?download='.urlencode($cc->EList[$i]->getEName()).'" target="_blank">Download</a>

否则将&字符视为url中的变量分隔符

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

PHP下载不适用于&

来自分类Dev

PHP 不适用于 https,而是下载文件

来自分类Dev

cURL文件下载适用于PHP 5.3而不适用于5.5

来自分类Dev

xcode的下载不适用于狮子

来自分类Dev

在 php 中下载文件不适用于 pdf 但适用于文本文件

来自分类Dev

适用于PHP,不适用于PHPUnit

来自分类Dev

适用于 PHP 但不适用于脚本

来自分类Dev

opendkim命令不适用于PHP

来自分类Dev

更新不适用于php mysql

来自分类Dev

条件不适用于php

来自分类Dev

PHP:if语句不适用于的表单

来自分类Dev

MySQL查询不适用于PHP

来自分类Dev

PHP forloop 不适用于数组

来自分类Dev

mysqli 不适用于 php 日期

来自分类Dev

PHP Json 不适用于 jsoncallback

来自分类Dev

php 不适用于 ubuntu 18.04

来自分类Dev

ajax 不适用于 php

来自分类Dev

PHP 查询不适用于 DELETE

来自分类Dev

PHP foreach 不适用于 MySQL

来自分类Dev

Get方法不适用于下载URL

来自分类Dev

Bootstrap Popover不适用于下载的js和CSS

来自分类Dev

文件下载不适用于$ .get或$ .post

来自分类Dev

文件下载不适用于Node.js gridfs

来自分类Dev

Uri编码,文件下载不适用于,并且空格

来自分类Dev

用于PING的PHP exec()函数不适用于Cpanel

来自分类Dev

PHP MYSQL查询不适用于PHP,但适用于PHPMyAdmin

来自分类Dev

wp 条件适用于 php 7 但不适用于 php 5

来自分类Dev

curl不适用于#

来自分类Dev

不适用于参数()