我正在使用php进行图像压缩。
<?php
if ($_POST) {
echo $_FILES['file']['size'];
}
?>
<html>
<head><title>Php code compress the image</title></head>
<body>
<form action="" name="myform" id="myform" method="post" enctype="multipart/form-data">
<ul>
<li>
<label>Upload:</label>
<input type="file" name="file" id="file"/>
</li>
<li>
<input type="submit" name="submit" id="submit" class="submit btn-success"/>
</li>
</ul>
</form>
</body>
</html>
&#13;
这可以正常使用小于2MB的图像。
如果尺寸> 2MB,那么在点击提交按钮后,即使它没有显示在$_FILES
答案 0 :(得分:3)
您首先要问的是,您没有检查上传是否成功。在您检查错误之前,您无法在$ _FILES中使用任何内容。检查$ _POST不是&#34;错误检查&#34;。
至少你应该
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
if ($_FILES['file']['error'] !== UPLOAD_ERR_OK) {
die("Upload failed with error code " . $_FILES['file']['error']);
}
... got here, upload was successful
}
答案 1 :(得分:2)
您可以查看$_FILES['file']['error']
并检查其值是否等于魔力常数UPLOAD_ERR_INI_SIZE
if ($_FILES['file']['error'] === UPLOAD_ERR_INI_SIZE) {
//uploading failed due to size limmit
}
答案 2 :(得分:0)
这可能是由于“upload_max_filesize”和/或“max_post_size”设置造成的。检查php.ini中的设置。
答案 3 :(得分:0)
如果上传的尺寸大于2 mb则显示错误
,则可以使用此功能if($file_size > 2048) {
$errors[]='File size is greater than 2 MB';
}
或者,如果您要上传的图片大小超过2 MB,请修改php.ini
文件并更改&#34; upload_max_filesize&#34;和/或&#34; max_post_size&#34;值。