【问题标题】:How to move file to another folder? [closed]如何将文件移动到另一个文件夹? [关闭]
【发布时间】:2012-07-13 12:45:42
【问题描述】:
<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 但它不喜欢移动......(

【问题讨论】:

标签: php html forms file input


【解决方案1】:

使用这个

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['filename']['name'] - name 包含用户上传的原始路径 文件。

$_FILES['filename']['tmp_name'] - tmp_name 包含驻留在服务器上的临时文件的路径。该文件应以临时名称存在于服务器上的临时目录中。

看到这个tutorial on Tizag

【讨论】:

  • 是的,我的页面是 index.php,但它仍然无法正常工作(
【解决方案2】:

您可以使用$_FILES 数组来获取有关上传文件的信息。

var_dump($_FILES) 看看里面有什么。

$_FILES['filename'] 将包含文件的信息。

  • $_FILES['filename']['name'] 作为原始文件名
  • $_FILES['filename']['tmp_name'] 作为服务器上临时文件的路径。除非您移动它,否则它将被删除!使用move_uploaded_file() 移动它

我推荐阅读this tutorial

【讨论】:

  • 好吧,我就那样动,动不了
  • 将最大尺寸字段移到输入上方。
【解决方案3】:

除了其他人所说的之外,您缺少 PHP 手册中的 MAX_FILE_SIZE 声明:

MAX_FILE_SIZE 隐藏字段(以字节为单位)必须位于 文件输入字段,它的值是接受的最大文件大小 php。应始终使用此表单元素,因为它可以为用户节省 等待传输大文件的麻烦只是发现 它太大,传输失败。请记住:愚弄这个 在浏览器端设置非常简单,所以不要依赖文件 此功能阻止了更大的尺寸。它只是一个 为应用程序客户端的用户提供便利功能。 但是,最大大小的 PHP 设置(在服务器端), 不能被愚弄。

&lt;input type="hidden" name="MAX_FILE_SIZE" value="102400"/&gt;

【讨论】:

    【解决方案4】:

    您需要定义表单的动作属性。

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

    编辑:以及 abhshkdz 写的内容。

    【讨论】:

    • 一个空白动作属性将简单地发布到同一页面,这基于 OP 的代码看起来是所需的行为。
    猜你喜欢
    • 2015-07-22
    • 2014-04-22
    • 1970-01-01
    • 1970-01-01
    • 2010-09-12
    • 1970-01-01
    • 2022-10-25
    • 1970-01-01
    相关资源
    最近更新 更多