Move_uploaded_file() 函数不起作用

2022-08-30 10:20:51

我正在处理一个网站,我希望用户能够上传文件。所以我正在努力学习如何做到这一点。我研究了一下,它说我必须使用函数move_uploaded_file()。我编写了代码,就像在示例中一样(更改数据),但它不起作用。请帮帮我,我是这些新手。以下是我到目前为止所做的工作:

<!DOCTYPE html>
<html>
   <head>
   </head>
<body>
   <form action="upload_file.php" method="POST" enctype="multipart/form-data">
      <input type="hidden" name="MAX_FILE_SIZE" value="30000" />
      <input type="file"name="file">
      <input type="submit">
   </form>
</body>
<html>

这是upload_file.php:

<!DOCTYPE html>
<html>
  <head>
  <head>
     <body>
        <?php
          $move = "/Users/George/Desktop/uploads/";
          echo $_FILES["file"]['name']."<br>";
          echo $_FILES["file"]['tmp_name']."<br>";
          echo $_FILES["file"]['size']."<br>";
          echo $_FILES['file']['error']."<br>";
          move_uploaded_file($_FILES['file']['name'], $move);
        ?>
     <body>
<html>

答案 1

该文件将存储在临时位置,因此请使用tmp_name而不是名称

if (move_uploaded_file($_FILES['image']['tmp_name'], __DIR__.'/../../uploads/'. $_FILES["image"]['name'])) {
    echo "Uploaded";
} else {
   echo "File not uploaded";
}

答案 2

尝试使用函数而不是 。它对我有用copy()move_uploaded_file()

copy($_FILES['file']['tmp_name'], $path);

推荐