【发布时间】:2015-12-05 12:12:39
【问题描述】:
我正在建立一个管理员应该能够上传图片的网站。如果图像大于 2MB,它将由于限制而失败。但即使没有限制,由于访问者的加载时间,调整图像大小仍然会更好。
图片的宽度不应超过 800 像素,高度无关紧要,因为它永远不会很大。 我现在要做的是调整图像的大小,使宽度为 800 像素或更低,并且以相同的比例调整高度。
我现在拥有的如下:
if (!empty($_FILES))
{
$upload_dir = 'photos';
$tempFile = $_FILES['file']['tmp_name'];
$targetPath = dirname( __FILE__ ) . DIRECTORY_SEPARATOR . $upload_dir . DIRECTORY_SEPARATOR;
$mainFile = $targetPath . time() . '-' . $_FILES['file']['name'];
list($w, $h) = getimagesize($tempFile);
if ($w > 800)
{
$ratio = 800 / $w;
$newHeight = $ratio * $h;
$tempFile = imagescale($tempFile, 800);
}
move_uploaded_file($tempFile, $mainFile);
}
但这没有任何作用。
我正在使用带有此脚本的 dropzone 作为图像输入的目标。
有人能指出我正确的方向吗?
或者 PHP 是否已经尝试在图像位于 $_FILES 时上传该图像?如果是这种情况,我不知道如何解决。然后应该在 dropzone 调用这个脚本之前调整它的大小。
【问题讨论】:
标签: javascript php image dropzone.js