【问题标题】:Uploading a .gz file VIA html form通过 html 表单上传 .gz 文件
【发布时间】:2014-04-10 10:52:32
【问题描述】:

我一直在搜索谷歌,但找不到任何有用的东西!我有一个客户想要上传产品的大型 CSV 文件(因为有 150mb 加上未压缩,所以很痛苦)。

我注意到他从批发商那里获得了 gz 压缩文件(低至 6mb)。我一直在尝试通过我为他创建的管理表单上传 gz,但提交时 $_FILES 全局为空(这是在上传到 tmpdir 之后)

如果我上传未压缩的 csv 一切正常(因为 $_FILES 全局不为空),所以我猜服务器正在阻止文件?但我找不到任何关于此的内容,并查看其他允许扩展的上传脚本。

表格如下:

<form action="/admin.php?current_page=new_upload" method="post" enctype="multipart/form-data">

<label for="csvFile">CSV File: (*)</label>
<input class="form-control" type="file" required name="csvFile" id="csvFile" />        
<input class="btn btn-success" id="subBtn" type="submit" value="Upload CSV to Site" />
</form>

在尝试上传 gz 文件时在此处获取 tmp_name 为空(文件的第一行):

$fn = $_FILES['csvFile']['tmp_name'];

在文件顶部放置一个 var_dump($_FILES) 并且它完全是空的,所以它会在运行任何脚本之前丢失

但如果我上传 .csv 文件则没有问题

【问题讨论】:

  • 扩展中通常没有上传限制,无论如何它应该可以上传 .gz 文件。一些代码会很棒。
  • 用脚本编辑,但我认为这可能是服务器问题,因为 csv 工作正常,但它拒绝 gz,但正如你所说,通常没有限制,这就是我在搜索 Google 时得到的要点: (

标签: php file csv upload gzip


【解决方案1】:

所以我终于屈服并上传了巨大的未压缩文件,但失败了,然后我将样本数据GZ并运行良好,所以这一定是文件大小的问题,即使gz只有6mb(我们已将限制设置为 150mb)服务器必须在接触脚本之前以实际大小读取文件。

我会玩弄服务器设置,但还是感谢您的关注!

【讨论】:

    猜你喜欢
    • 2012-08-08
    • 2016-03-18
    • 2011-06-30
    • 2019-10-17
    • 1970-01-01
    • 2017-02-06
    • 1970-01-01
    • 2011-12-24
    • 1970-01-01
    相关资源
    最近更新 更多