在PHP中上载多个文件时无法检查文件大小
我正在尝试检查多个文件上载的文件大小限制。每次我收到抱歉,您的文件上载过大,最大文件大小为10 MB。 无法找出错误 没有提供文件限制,文件上传工作正常。我还在PHP.ini文件中做了必要的更改,如POST_MAX_SIZE和MAX_file_SIZE,但响应是相同的在PHP中上载多个文件时无法检查文件大小,php,file-upload,Php,File Upload,我正在尝试检查多个文件上载的文件大小限制。每次我收到抱歉,您的文件上载过大,最大文件大小为10 MB。 无法找出错误 没有提供文件限制,文件上传工作正常。我还在PHP.ini文件中做了必要的更改,如POST_MAX_SIZE和MAX_file_SIZE,但响应是相同的 foreach($_FILES['upload_slider']['tmp_name'] as $key => $tmp_name){ #file upload size - file siz
foreach($_FILES['upload_slider']['tmp_name'] as $key => $tmp_name){
#file upload size - file size 10MB
$fileSize = $_FILES['upload_slider']['size'][$key];
if ($fileSize <= 10485760) #10 MB
{
$_SESSION['upload_warning'] = "Sorry, your file is too large upload, maximum file size is 10 MB.";
header("location:../slider.php");
die;
}
else{
$file_name = strtolower($_FILES['upload_slider']['name'][$key]);
$file_tmp = $_FILES['upload_slider']['tmp_name'][$key];
$ext = pathinfo($file_name, PATHINFO_EXTENSION);
$new_filename = rand().".".$ext;
if(in_array($ext,$extension))
{
move_uploaded_file($file_tmp= $_FILES['upload_slider']['tmp_name'][$key],"$album_dir$new_filename");
# insert record in database
$values = [
'slider_id' =>$slider_id,
'image_name' => $new_filename,
//'album_name' => $album_title,
'image_path' => $db_album_dir.$new_filename,
'uploaded_date' => date("Y/m/d h:i:s ")
];
$res = $abc->insert($tablename,$values);
header("location:../slider.php");
}
else
{
$_SESSION['upload_warning'] = "Please upload appropriate file type extension i.e. <b> jpg, jpeg, png , gif. </b> ";
header("location:../slider.php");
die;
}
}
}//EOF FROEACH
您是否试图将每个文件限制为10Mb?因为现在你的if声明正好相反:
if ($fileSize <= 10485760){ //if the file is less or equal to 10mb
//return error
}
else{ //else if the file is larger than 10mb
//proceed with uploading
}
这是什么类型的运算符=>?对不起,我犯了一个错误,我的意思是写>=大于或等于,但写了=>这是关联数组的分隔符。现在已在邮件中修复。关联数组如下所示:$user_list=数组'name'=>john'、'姓氏'=>white';在本例中,它不是索引号0-n,而是“键”,即分配给值john,white的名称和姓氏。
if($fileSize >= 10485760){ //return error
}
else { //upload file
}