首页 > 解决方案 > 上传脚本无法上传到某个不在附近的位置,我该如何解决?

问题描述

此脚本旨在将照片上传到目标文件夹调用照片。我找不到任何工作方法来解决这个问题。这个网站上的所有解决方案都不适用于我,我在谷歌上找不到有效的解决方案。

所以文件调用 submit-a-new-photo.php 位于 C:/xampp/htdocs/zoo-library/animals/submit-a-new-photo.php

照片文件夹位于 C:/xampp/htdocs/wild-life/animals/photos

当我尝试上传照片时,出现这些错误

警告:move_uploaded_file(/wild-life/animals/photos/fox.jpg):打开流失败:C:\xampp\htdocs\zoo-library\animals\submit-a-new-photo 中没有这样的文件或目录。第 14 行的 php

警告:move_uploaded_file(): Unable to move 'C:\xampp\tmp\php93B4.tmp' to '/wild-life/animals/photos/fox.jpg' in C:\xampp\htdocs\zoo-library\animals\在第 14 行提交-a-new-photo.php

这是我的代码

提交新照片.php

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

<input type='file' name='file'><br>
<input type='submit' name='submit' value='upload'>

</form>

<?php

if(isset($_POST['submit'])){
    
$file=$_FILES['file']['name'];
$location='/wild-life/animals/photos/'.$file;
move_uploaded_file($_FILES['file']['tmp_name'],$location);  

}

?>

标签: php

解决方案


您没有将完整路径放入$location. 它应该是:

$location = 'C:/xampp/htdocs/wild-life/animals/photos/' . $file;

如果您不想硬编码C:/xampp/htdocs,可以使用$_SERVER自动保存它的变量。

$location = $_SERVER['DOCUMENT_ROOT'] .'/wild-life/animals/photos/' . $file;

推荐阅读