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
展开
 我来答
往返现实与网络
2015-01-20 · 超过71用户采纳过TA的回答
知道小有建树答主
回答量:199
采纳率:0%
帮助的人:114万
展开全部
你上面那个是判断出现错误情况下的,判断有没超过你定义的大小是返回错误为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就可以了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式