为了清楚起见,我将其分解为易于导航和可读的部分。
问题:
$ _FILES超级全局在我上传文件后似乎没有任何信息。尽管如此,我得到错误代码0(成功上传)似乎是矛盾的。
背景
我已经在个人网站上工作了一段时间,我正在开发一个后期管理系统。它到目前为止一直很好,但我很快就试图使用$ _FILES上传图片。
我在学校和我的工作中多次做过这种事情,但是我的电脑似乎存在某种问题,或者我有一大笔白痴。
我已经解决了这个问题:
upload_max_filesize
和post_max_size
等值更改为100米UPLOAD_ERR_OK
我将包含我编写的一个小测试页,并且正在演示该问题:
text.php:
<?php
if(isset($_POST['submit'])){
echo $_FILES['a']['error'];
if(isset($_FILE['a']['tmp_name'])){
echo "hello";
}
}
?>
<form action = "text.php" method = "POST" enctype="multipart/form-data">
<label for = "a"> Send Image </label>
<input type = "file" name = "a" id = "a">
<input type = "submit" name = "submit" value = "Submit">
</form>
提交表单时,我收到错误代码0但是hello测试语句没有触发
我不会正常问这个问题,但已经过了几个星期,我想完成我的网站。
此示例代码可以在您自己的计算机上运行,如果是这种情况,请不要进行downvote。我正在排除故障的原因。
感谢您的帮助!
答案 0 :(得分:1)
全局数组的名称为$_FILES
,您正在检查isset($_FILE['a']['tmp_name']
如果您想检查上传的文件,请尝试使用
if (is_uploaded_file($_FILES['a']['tmp_name'])) {
//file is uploaded
}