文件上传的时候,使用隐藏表单 MAX_FILE_SIZE 属性提示,为什么上传的文件超出了规定的大小,不报错??这是HTML表单: <form action="demo.php" method="post" enctype="multipart/form-data">
商品名称:<input type="text" name="shopname" /><br />
商品价格:<input type="text" name="price" /><br />
<input type="hidden" name="MAX_FILE_SIZE" value="1000" />
商品图片:<input type="file" name="pic" /><br />
<input type="submit" name="sub" value="提交" />
</form>这是php代码if($_FILES['pic']['error'] > 0){
switch($_FILES['pic']['error']){
case 1:
echo "上传的文件超过了php.ini中upload_max_filesize选项限制的值";
break;
case 2:
echo "上传文件的大小超过了HTML表单中MAX_FILE_SIZE选项指定的值";
break;
case 3:
echo "文件只有部分被上传";
break;
case 4:
echo "没有文件被上传";
break;
default:
echo '未知错误';
}
exit;
}else{
echo "#################";
}请求指导?谢谢 uploadphp表单

解决方案 »

  1.   


    $inis = ini_get_all();
    $uploadmax = $inis['upload_max_filesize'];if (!is_array($_FILES['pic']) || !$_FILES['pic']['size']) {
      echo '上传的文件超过了php.ini中upload_max_filesize选项限制的值'.$uploadmax['global_value'].'('.$uploadmax['local_value'].')。';
    }if ($_FILES['pic']['size'] > $_POST['MAX_FILE_SIZE']) {
      echo '上传文件的大小超过了HTML表单中MAX_FILE_SIZE选项指定的值'; //1000
    }