我试着做一个简单的文件上传。我以前做过很多次了,一直都很好。由于某种原因,这一次我不断地出现错误UPLOAD_ERR_INI_SIZE。尽管我以前在同一台服务器上上传了更大的文件。这是我的PHP.INI:
display_errors = On
short_open_tag = On
memory_limit = 32M
date.timezone = Europe/Paris
upload_max_filesize = 10M
post_max_size = 10M我的HTML表单:
<form action="/settings/upload-image" method="POST" enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="<?=(1024*1024*1024);?>">
<input name="files[]" id="attachfile" type="file" />
<br /><br />
<input type="submit" class="submit" value="Upload New Profile Image">
</form>我的密码是:
foreach($files as $file)
{ $ext = strtolower(pathinfo($file[0], PATHINFO_EXTENSION));
if(in_array($ext,$allowed_upload_ext)===TRUE)
{
if(!$file[3]) { // If no error code
//$newFile = $me['id'].".$ext";
$newFile = $file[0];
resizeImage($file[2],PROFILE_IMAGES."/".$newFile,$ext,500);
genThumbFile($file[2],PROFILE_IMAGES."/thumb/".$newFile);
runSQL("UPDATE `users` SET `image`='{$file[0]}' WHERE `id`='{$me['id']}';");
array_push($msgs,"Image uploaded successfully.");
$me = select("SELECT * FROM `users` WHERE `id`='{$me['id']}';",true);
} else {
array_push($msgs,"!".fileError($file[3]));
}
} else {
array_push($msgs,"!The file ".$file[0]." could not be uploaded as it is the wrong file type.");
}
}这一次唯一的区别是,我使用临时上传文件调整拇指大小,而不是先复制文件。这就是问题所在吗?我不这么认为,因为如果图像很小,它就会工作得很好。但是我尝试了2mb这样的方法,它让我很生气。
有什么建议吗?
发布于 2013-07-18 18:54:12
谢谢你们的帮助。:P
我在PHP.INI中解决了它的缺失线:
file_uploads = On
只对任何有这种感觉的人来说。
https://stackoverflow.com/questions/17730347
复制相似问题