【问题标题】:move_uploaded_file save empty file only in IEmove_uploaded_file 只在 IE 中保存空文件
【发布时间】:2019-08-06 22:57:35
【问题描述】:

在我的代码中我使用 move_uploaded_file 函数时,我对 Internet Explorer 甚至 11 都有很大的问题。此功能在服务器上保存空白文件,大小为 0KB,但它可以在其他浏览器(如 chrome、firefox 等)上运行,并且功能保存完整文件。我在表单中有 multipart enctype,在目录中有权限 777。

有人可以帮我怎么做才能成功保存这个文件吗?

if (!empty($_FILES['INPUT']['name'])) {
        if ($_FILES["INPUT"]["type"] == "image/png" 
            || $_FILES["INPUT"]["type"] == "image/jpg"
            || $_FILES["INPUT"]["type"] == "image/jpeg"
            || $_FILES["INPUT"]["type"] == "image/JPG"
            || $_FILES["INPUT"]["type"] == "image/JPEG"
            || $_FILES["INPUT"]["type"] == "image/PNG"
            || $_FILES["INPUT"]["type"] == "image/pjpeg"
            || $_FILES["INPUT"]["type"] == "image/x-png") {
            $img = $_FILES['INPUT']['name'].".png";
            $target_file = '../assets/directory/'.$img;
            move_uploaded_file($_FILES['INPUT']['tmp_name'], $target_file);
            return "/assets/directory/".$_FILES['INPUT']['name'].".png";
        }
    }

【问题讨论】:

  • var_dump($_FILES["INPUT"]["type"]);
  • 也向我们展示上传代码
  • var_dump 返回字符串(10) "image/jpeg"
  • var_dump($_FILES['INPUT']);
  • 互联网探索者c array(5) {["name"]=>string(9) "test4.JPG"["type"]=>string(10) "image/jpeg"["tmp_name"]=>string(14) "/tmp/phphQplne"["error"]=>int(0)["size"]=>int(0) } CHROME c array(5) { ["name"]=> string(9) "test4.JPG" ["type"]=> string(10) "image/jpeg" ["tmp_name"]=> string(14) "/tmp/phpxbazEi" ["error"]=> int(0) ["size"]=> int(84203) }

标签: php internet-explorer


【解决方案1】:

在我的情况下,问题在于 target="_blank" 当我删除它时一切正常。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-29
    • 1970-01-01
    • 2011-04-23
    • 1970-01-01
    • 2015-12-01
    • 1970-01-01
    相关资源
    最近更新 更多