首页 / PHP / PHP下传文件一个很奇怪的有关问题
PHP下传文件一个很奇怪的有关问题
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了PHP下传文件一个很奇怪的有关问题,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1654字,纯文字阅读大概需要3分钟。
内容图文
![PHP下传文件一个很奇怪的有关问题](/upload/InfoBanner/zyjiaocheng/215/d74ddb1a4ecf418a965ff018e40e5d53.jpg)
下面的的form提交页面
- HTML code
upload.php页面的代码
- PHP code
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 "没有发生错误"; }
我在form表单里边有限制最大的尺寸 MAX_FILE_SIZE=1M 如果我上传word 图片 如果是超过1M的话会提示的 但是我换了一个大于1M的exe 竟然可以上传成功
查看了PHP.INI之后更加郁闷
;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;
; 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 = "d:/wamp/tmp"
; Maximum allowed size for uploaded files.
upload_max_filesize = 2M
我没有修改过配置文件!
配置文件限制最大2M但是我上传exe的文件传了 30M左右的 竟然没有报错。
大牛门帮忙看看什么问题
------解决方案--------------------
遇到问题,首先开启error_reporting(E_ALL),然后对症下药
------解决方案--------------------
你表单里隐藏域的值没有加入判断,怎么会起效?
既然你php.ini中设置了上传的最大大小。应该会生效。检查重启了服务器没有。
------解决方案--------------------
- PHP code
if (isset($_POST['sub'] ){ } else { echo '文件过大或者,其他未知错误!'; } //如果小于1M,echo $_POST['sub'] 会显示upload;,但是如果大于,echo $_POST['sub'] 就会显示空;
------解决方案--------------------
对,应该用楼上的方法,判断 sub 表单按钮是否被点击提交来判断文件上传
然而另一方面,我调试的时候上传个1.73MB的exe文件是可以正常上传的,估计是配置问题,而不是代码存在问题
内容总结
以上是互联网集市为您收集整理的PHP下传文件一个很奇怪的有关问题全部内容,希望文章能够帮你解决PHP下传文件一个很奇怪的有关问题所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。
来源:【匿名】