【问题标题】:PHP: mysql query skipped/ignored after large file uploads?PHP:大文件上传后跳过/忽略mysql查询?
【发布时间】:2010-11-03 00:57:13
【问题描述】:

奇怪...最初我认为 php 没有正确处理大文件上传(800mb-2gb)

现在我发现文件已正确移动,但在上传大文件时似乎跳过了将文件信息输入数据库的 mysql 查询。

mysql 查询的执行方式与上传小文件时的方式相同。这个问题似乎只出现在较大的文件中

此外,移动文件之前的 mysql 查询似乎工作正常。

流程:

Wait for uploaded file, 
check file size, 
get md5 of file, 
move file from temp folder to uploads folder, 
if moving file is successful then mysql query.

文件应该在哪里,但查询没有执行。

我应该在文件移动之后和调用 mysql 查询之间延迟 10 秒吗?

【问题讨论】:

    标签: php mysql


    【解决方案1】:

    如果文件移动正常,那么问题很可能出现在最后一步 - MySQL 查询。使用error_reporting(E_ALL) 最大化错误级别并设置 PHP 错误日志 - 这将记录任何 MySQL 警告和任何其他问题。记录您尝试执行的 SQL 查询。它可以从 MySQL 客户端工作吗?

    【讨论】:

    • 原来在脚本开头建立的mysql连接在文件上传完成时超时。
    【解决方案2】:

    听起来大文件没有成功从临时文件夹中移动?您能否通过查看该文件是否仍然存在于 /tmp 或其他位置来确认这一点?

    【讨论】:

    • tmp 文件夹好像是空的。只剩下剩余的文件夹,仅此而已。
    • 而且,在 if(move(blahfile, blahnewfile)) 语句中有回声工作正常,它的 mysql 查询似乎只在上传较小的文件时才有效
    猜你喜欢
    • 2012-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-05
    • 1970-01-01
    • 2017-03-12
    • 2016-01-14
    • 1970-01-01
    相关资源
    最近更新 更多