首页 文章

使用PHP上传文件

提问于
浏览
0

我想上传文件并将其保存到我们目录中的uploads文件夹中 . 我已经通过使用该代码完成了..但它不工作..有一个错误..

“警告:move_uploaded_file(uploads / 1341221475 :: 1aaaa.text):无法打开流:第24行/var/www/html/PHP/upload_file.php中的权限被拒绝警告:move_uploaded_file():无法移动'/ tmp / phpSZhm3c'到'上传/ 1341221475 :: 1aaaa.text'在第24行的/var/www/html/PHP/upload_file.php中存储:aaaa / aaaa.text“

请帮忙

代码:

if($_FILES["file"]["error"] > 0)
            {
                echo "ERROR ".$_FILES["file"]["error"]."<br>";
            }
            else
            {
                echo "NAME : ".$_FILES["file"]["name"]."<br>";
                echo "TYPE : ".$_FILES["file"]["type"]."<br>";
                echo "SIZE : ".($_FILES["file"]["size"]/1024)."KB<br>";
                echo "Stored in : ".$_FILES["file"]["tmp_name"]."<br>";
                if (file_exists("aaaa/" . $_FILES["file"]["name"]))
                      {
                    echo $_FILES["file"]["name"] . " already exists. ";
                      }
                else
                      {
                $target_path = "uploads/";
                    $target_path = $target_path . time() . $_SERVER['REMOTE_ADDR'] . basename( $_FILES['file']['name']);
                      move_uploaded_file($_FILES["file"]["tmp_name"],$target_path);
                      echo "Stored in: " . "aaaa/" . $_FILES["file"]["name"];
                      }
            }

4 回答

  • 0

    您的Web服务器在某个用户下运行(例如,“www”) . 确保用户具有uploads文件夹的写入权限 .

  • 0

    授予Apache(例如)作为输出目录的所有者的权限,然后它将能够创建文件 .

  • 0

    每当使用代码编写文件时,运行代码的用户都应具有权限 . 在这种情况下,启动apache webserver的人应该有权写入该文件夹 . 使用chmod命令指定权限 .

    如果你不太担心安全性,你可以像这样提供777上传文件夹 . 假设您的uploads文件夹位于/ var / www / html / site / uploads中,则运行

    chmod -R 777 /var/www/html/site/uploads
    

    HTH

  • 0

    确保您的uploads文件夹具有完全权限,以便您可以将文件移入其中 .

    尝试 chmod 777 -R 到uploads目录 . 例如:

    $ sudo chmod 777 -R /var/www/html/PHP/uploads/
    

相关问题