<html>
<head>
<title>Main Page</title>
</head>
<body>
<h2>Main Page</h2>
<form method="post" action="index.php" enctype="multipart/form-data">
<input type="file" name="filename">
<input type="hidden" name="MAX_FILE_SIZE" value="102400"/>
<input type="submit" value="Upload file">
<br>
<?php
echo $_FILES['filename']['name'];
$uploads_dir = '/uploads';
$tmp_name = $_FILES['filename']['tmp_name'][$key];
$name = $_FILES['filename']['name'][$key];
move_uploaded_file($tmp_name, "$uploads_dir/$name");
?>
</body>
</html>
如何将此文件移动到文件夹?我尝试使用move_uploaded_file但它最不动...(
使用这个
echo $_FILES['filename']['name'];
正如BrianDriscoll指出的那样,MAX_FILE_SIZE
声明必须在文件输入字段之前。
<form action = "index.php" method="post" enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="102400" />
<input type="file" name="filename" />
<input type="submit" value="Upload file" />
</form>
$_FILES["文件名"]["名称"] - name
包含用户上传的原始路径文件。
$_FILES['文件名']['tmp_name'] - tmp_name
包含驻留在服务器上的临时文件的路径。该文件应存在于服务器上具有临时名称的临时目录中。
请参阅有关Tizag的本教程。
您可以使用
$_FILES
数组获取有关上传文件的信息。
var_dump($_FILES)
看看它包含什么。
$_FILES['filename']
将包含文件的信息。
-
$_FILES['filename']['name']
为原始文件名 -
$_FILES['filename']['tmp_name']
作为服务器上临时文件的路径。除非您移动它,否则这将被删除!使用move_uploaded_file()
移动它
我建议阅读本教程
除了其他人所说的之外,您还缺少 PHP 手册中的 MAX_FILE_SIZE 声明:
MAX_FILE_SIZE隐藏字段(以字节为单位(必须位于 文件输入字段,其值是 接受的最大文件大小 .PHP。应始终使用此表单元素,因为它可以节省用户 等待大文件被传输却发现的麻烦 它太大,传输失败。请记住:愚弄这个 浏览器端的设置非常简单,因此永远不要依赖 此功能阻止的更大尺寸。它只是一个 应用程序客户端用户的便利功能。 但是,最大大小的 PHP 设置(在服务器端( 不能被愚弄。
<input type="hidden" name="MAX_FILE_SIZE" value="102400"/>
您需要定义表单的 action-属性。
<form method="post" action="" enctype="multipart/form-data">
编辑:以及Abhshkdz写的。