php上传文件 关于上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值 40
-----------------------------------------------------html----------------------------...
-----------------------------------------------------html------------------------------------------------------------------------<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<form action="upload.php" method="post" enctype="multipart/form-data">
shopname:<input type="text" name="shopname"><br>
shopprice:<input type="text" name="price"><br>
shopnum:<input type="text" name="num"><br>
<input type="hidden" name="MAX_FILE_SIZE" value="1000000">
shoppic:<input type="file" name="file"><br>
<input type="submit" name="sub" value="添加商品">
</form>
</body>
</html>
-------------------------------------------------------php----------------------------------------------------------------------<?php
if($_FILES['file']['error']>0){
switch($_FILES['file']['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;
}
echo "上传成功";
不管我上传多大的文件 都是上传成功 是php.ini没设置对嘛
我想让他输入 上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。
--------------------------------------------------------------php.ini-----------------------------------------------------------
; Whether to allow HTTP file uploads.
file_uploads = On
; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
;upload_tmp_dir =
; Maximum allowed size for uploaded files.
upload_max_filesize = 200M 展开
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<form action="upload.php" method="post" enctype="multipart/form-data">
shopname:<input type="text" name="shopname"><br>
shopprice:<input type="text" name="price"><br>
shopnum:<input type="text" name="num"><br>
<input type="hidden" name="MAX_FILE_SIZE" value="1000000">
shoppic:<input type="file" name="file"><br>
<input type="submit" name="sub" value="添加商品">
</form>
</body>
</html>
-------------------------------------------------------php----------------------------------------------------------------------<?php
if($_FILES['file']['error']>0){
switch($_FILES['file']['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;
}
echo "上传成功";
不管我上传多大的文件 都是上传成功 是php.ini没设置对嘛
我想让他输入 上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。
--------------------------------------------------------------php.ini-----------------------------------------------------------
; Whether to allow HTTP file uploads.
file_uploads = On
; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
;upload_tmp_dir =
; Maximum allowed size for uploaded files.
upload_max_filesize = 200M 展开
1个回答
展开全部
你上面那个是判断出现错误情况下的,判断有没超过你定义的大小是返回错误为0的情况下进行判断。
if($_FILES['file']['error']>0){
switch($_FILES['file']['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
{
if($_FILES['file']['size'] > 1000000)
{
echo "上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。";
exit;
}
}
echo "上传成功";
更多追问追答
追答
你前面的代码就没判断对,你那代码是是针对配置文件php.ini里的,但是你的配置文件是100M,怎么可能不成功呢?
如果你上传的文件超过100M肯定会报你那代码的错误信息。
所以你真正要判断是在错误为0的情况下再进行判断才对的,不然你把php.ini里的上传大小限制1M就可以了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询