【问题标题】:Strange PHP upload behavior奇怪的 PHP 上传行为
【发布时间】:2013-04-20 15:05:13
【问题描述】:

你好 StackOverFlow 社区。​​strong>

我遇到了一个奇怪的 PHP 问题,我自己无法解决,我已经尝试了我所知道的一切。 基本上,我有一个音乐上传网站。上传表单有一些字段(音乐、乐队、子流派、笔记、上传[文件]和流派[这是用户不需要写任何东西的一次性字段,自动]。字段“音乐”和“文件”不能为空

嗯,很多音乐都可以正常上传,但其中一些会导致奇怪的行为。

问题: 即使填写所有字段(包括“音乐”和“文件”或课程),也会向我显示消息(由我在脚本中编写)“请至少感受一下音乐名称”。但是我写了! 然后,我测试了是否设置了 $_POST 变量,并且每次发生此错误时,任何 $_POST/$_GET 变量都为空。如果音乐需要更多时间上传,这种情况会特别发生。 此外,不会发生 PHP 错误。什么都没有。

注意事项: - 我已经尝试过“set_time_limit(0);” - 我已经更改了“max_upload_size”和另一个,我之前遇到了大小问题,我解决了它。最大为 20mb,我尝试上传的音乐只有 9mb。 - 我已经完成了 print_r($_POST) 并返回给我“array()”,什么都没有。

这是我的代码,如果你想看的话:

我很确定错误是在 PHP.ini 中,我试过把

ini_set('max_execution_time', '3600');
ini_set('max_input_time', '3600');

但大多数时候,ini_set 不起作用。

如何解决?很关键。。 提前致谢。

@编辑

表单脚本文件:

对该脚本的查询对于上传并不重要。

【问题讨论】:

  • 你能显示用于表单的 HTML 吗?如果您的 POST 是空的,不知何故您的请求无法发送它......我会在那里寻找错误。
  • 可以,请稍等。我会在这里编辑。
  • $_FILES["post_arquivo"]["error"] 说什么?尝试打印它。可能会有所帮助。
  • 另外你是如何运行 php 的?我的意思是 webservice 和 SO,例如我在 fastCGI 上运行 IIS7 php5.3 时遇到了类似的问题,除了 max_execution_time() 我还必须设置 fastCGI 的请求超时。
  • 可能是因为post_max_size?

标签: php variables upload null


【解决方案1】:

如果您无法修改 php 上传大小或帖子大小(假设这可能是导致问题的原因),则可能值得查看某种分块上传解决方案。像http://www.plupload.com/ 这样的东西可能值得一看。

这将允许您将上传的块保持在服务器上传限制以下,然后在完成上传后重建文件服务器端。 At 还允许您在用户等待时向他们显示一个非常简洁的小进度条。

它有各种运行时,包括 html5,只需要很少的配置就可以运行。您唯一需要做的就是更改表单提交流程的流程。所以捕获表单提交,使用 plupload 触发上传,然后在上传完成后发布其余的表单数据。

我知道这不是解决您遇到的问题的直接方法,但它是一个很好的替代方案,可以避免您遇到的一些问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-08
    • 2013-08-09
    • 2021-11-21
    • 2018-05-20
    • 2012-01-07
    • 1970-01-01
    相关资源
    最近更新 更多