php - 尝试上传文件时 $_FILES 为空

标签 php

这让我发疯。我想弄清楚如何上传文件。我有两个非常简单的文件,但它似乎不起作用。这首先是允许用户选择文件的文件:

<html>
<head>
<title>File Upload Form</title>
</head>
<body>
This form allows you to upload a file to the server.<br>

<form action="getfile.php" method="post"><br>
Type (or select) Filename: <input type="file" name="uploadFile">
<input type="submit" value="Upload File">
</form>
</body>
</html>
</code>

第二个是处理它的php文件:

<html>
<head>
<title>Process Uploaded File</title>
</head>
<body>
<?php

print_r($_FILES);
print "<P>\n";

move_uploaded_file ($_FILES['uploadFile'] ['tmp_name'],
       "../blimages/site/7337/{$_FILES['uploadFile'] ['name']}")

?>
</body>
</html>

因为 -- 除了 print_r -- 我从关于如何上传文件的网站教程中提取了这些文件,所以我认为这些文件没问题。

print_r($FILES) 返回一个完全空的数组。

我还检查了 php.ini。允许上传文件,最大大小为 2M,我假设是 2 兆字节,这比我一直尝试上传的文件大得多。

还有什么问题?

谢谢,

肖恩。

最佳答案

将适当的 enctype 属性添加到您的 form 标记:

<form action="getfile.php" method="post" enctype="multipart/form-data">

记录在此处:http://www.php.net/manual/en/features.file-upload.post-method.php

此外,确保在访问多维数组时括号之间没有空格:

$_FILES['uploadFile']['tmp_name']

关于php - 尝试上传文件时 $_FILES 为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3405885/

相关文章:

php - 获取给定类别中所有YouTube视频的完整列表

php - 替换 php 数组中的所有键

php - Zend 数组分页

php - 为什么 composer 在 packagist.org 上找不到我的全新软件包?

php - 如何检查 header() 是否已在 PHP 中设置?

php - undefined variable php 通知解决方法?

php - MySQL 表名带有重音符号。通过 PDO 更新时出现无效的 utf8 字符串

php - 从两个表查询时如何使用外键

php - 通过 PHPmailer 发送 HTML 表格

php - 模块可以下载文件吗?