无法上传文件(无错误,零大小)

问题描述 投票:0回答:2

我在上传

JPG
文件时遇到任何问题。但不是全部,我没有找到任何原因...:-(当然,我尝试先搜索,但没有结果...

我有一张图像,是网站上的打印屏幕,在 Photoshop 中打开并保存为 JPG,未压缩,质量为 100。它在 Mac Finder 中正常工作,我可以打开图像,它似乎没有损坏(您是否见过损坏的打印屏幕:-))。当我有另一张图片(JPG)时,在 Photoshop 中打开它,重新保存并尝试上传,文件已正确上传。

上传脚本被缩短为此代码

$files = [$_FILES['image'], $_FILES['imageHP']];
foreach ($files as $src) {
    $path = '';
    $name = prettyname($src['name']) . '-' . substr(time(), -4) . '.' . strtolower(pathinfo($src['name'], PATHINFO_EXTENSION)); // prettyname just make cool image name, strtolower, no spaces, accents, etc.
    if (!move_uploaded_file($src['tmp_name'], __DIR__ . "/../uploads/" . $path . 'orig_' . $src['name'])) {
        die ('Corrupted file'); // without this condition it the same
    }
}

上传文件后,我有时会得到

Array
(
    [image] => Array
        (
            [name] => centrum.jpg
            [type] => image/jpeg
            [tmp_name] => /private/var/tmp/phpzDyQE4 // file should be uploaded?
            [error] => 0           // strange error = 0
            [size] => 0            // strange, size = 0
        )

)

当我尝试上传另一张图像时,转储正确并且文件已上传。

数组

(
    [image] => Array
        (
            [name] => team.jpg
            [type] => image/jpeg
            [tmp_name] => /private/var/tmp/phpc5wmkE
            [error] => 0       // no error
            [size] => 601807   // correct file size
        )

有什么想法吗?谢谢

php file-upload upload move-uploaded-file
2个回答
0
投票

这似乎是缓存的问题。尝试清除缓存、删除临时文件等


0
投票

当我使用“预填充链接”时,这是一个问题。一旦您使用正确的链接/表格,这个问题就会消失。

© www.soinside.com 2019 - 2024. All rights reserved.