未定义的索引:PHP 7.2.1 中的file_upload

Undefined index: file_upload in PHP 7.2.1

提问人:H.Harrison1993 提问时间:7/8/2019 最后编辑:MartinH.Harrison1993 更新时间:7/8/2019 访问量:179

问:

我收到错误

注意:未定义索引:第 3 行 C:\MAMP\htdocs\basic_files\upload.php 中的file_upload

当我加载页面以在表单中上传文件时。

我知道很多其他人引用enctype或php.ini设置的问题作为此错误的原因,但我非常确定我的没问题。我已经清除了浏览器(chrome)缓存并重新启动了MAMP服务器几次,只是为了确保,但我仍然收到错误。

我的php.ini设置是:

file_uploads = On
upload_max_filesize = 128M
max_file_uploads = 20
memory_limit = 128M 
max_execution_time = 30
post_max_size = 128M

我的PHP是:

<?php   
ini_set('display_errors', 1);
error_reporting(E_ALL);
echo "<pre>Max upload size: ".ini_get('upload_max_filesize')."\nMax post 
size: ".ini_get('post_max_size')."</pre>";
if (isset($_POST['submit'])) {
print_r($_FILES['file_upload']);
}
?>

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<form action="upload.php" enctype="multipart/form-data" 
method="post">
<input type="file" name="file_upload"><br>
<input type="submit" name="submit">
</form> 
</body>
</html>

当我单击提交按钮时,页面在几秒钟内不执行任何操作,然后转到仍然称为 upload.php 的空白页面。

php html 文件上传 未定义索引

评论

2赞 Martin 7/8/2019
line 3与您在此处显示的代码不符。
0赞 Martin 7/8/2019
上传文件后是否会发生此错误?此错误是否仅在初始首页加载时发生?
0赞 H.Harrison1993 7/8/2019
谢谢 Martin,在将代码上传到 Stack Overflow 后,我不得不更改代码,但它的内容仍然相同,只是需要重做缩进和间距。上传文件后发生错误。它转到一个空白页,然后当我返回时,它显示错误,它会重复执行。
0赞 H.Harrison1993 7/8/2019
令人惊讶的是,它刚刚开始工作,我在机场,所以关闭了我的笔记本电脑以通过安检,我刚刚重新打开它,现在它工作正常。不知道那是什么,虽然很烦人。无论如何,谢谢你们,祝你有美好的一天:)对于将来阅读本文的任何人来说,可能是我清除了浏览器上的缓存,由于某种原因阻止了它的工作,然后在重新启动计算机后,它再次重新加载了所有内容,所以也许可以尝试一下。虽然我不能 100% 确定,但希望这可以帮助遇到这个问题的其他人。
0赞 Martin 7/8/2019
空白页强烈暗示 PHP 错误;您需要从错误日志中读取错误,而不是在屏幕上读取错误,因为屏幕输出将因致命错误而中断。请在这里阅读

答:

0赞 H.Harrison1993 7/8/2019 #1

虽然我不能 100% 确定这是实际的修复,但我认为它可能是。我确保所有php.ini设置都是正确的,并且enctype设置为“multipart/formdata”。然后我删除了浏览器缓存并重新启动了计算机,代码开始工作。