日期:2014-05-17 浏览次数:20658 次
<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="1000000" />
<input type="file" name="spic" /><br/>
<input type="submit" name="sub" value="upload"/>
</form>
if($_FILES["spic"]["error"] != 0)
{
switch($_FILES["spic"]["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 "未知错误";
}
}else
{
echo "没有发生错误";
}
if (isset($_POST['sub'] ){
} else {
echo '文件过大或者,其他未知错误!';
}
//如果小于1M,echo $_POST['sub'] 会显示upload;,但是如果大于,echo $_POST['sub'] 就会显示空;
------解决方案--------------------
对,应该用楼上的方法,判断 sub 表单按钮是否被点击提交来判断文件上传
然而另一方面,我调试的时候上传个1.73MB的exe文件是可以正常上传的,估计是配置问题,而不是代码存在问题