php - 上传脚本无法上传到某个不在附近的位置,我该如何解决?
问题描述
此脚本旨在将照片上传到目标文件夹调用照片。我找不到任何工作方法来解决这个问题。这个网站上的所有解决方案都不适用于我,我在谷歌上找不到有效的解决方案。
所以文件调用 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);
}
?>
解决方案
您没有将完整路径放入$location
. 它应该是:
$location = 'C:/xampp/htdocs/wild-life/animals/photos/' . $file;
如果您不想硬编码C:/xampp/htdocs
,可以使用$_SERVER
自动保存它的变量。
$location = $_SERVER['DOCUMENT_ROOT'] .'/wild-life/animals/photos/' . $file;
推荐阅读
- java - java.lang.OutOfMemoryError 内存溢出问题的问题:
- excel - 查找在连续数据中花费的时间
- macos - 如何创建一个包含仅在按住键盘修改键时出现的 NSMenuItem 的 NSMenu?
- flutter - 没有 MaterialApp 的颤振本地化
- spring-boot - 我们可以在没有 Spring Boot 的情况下实现 Spring 批处理应用程序吗?
- python - 以指定格式返回日期时间
- bash - Cron 作业从服务器获取文件,如果文件未更改,我应该在脚本中添加什么以使其在 15 分钟内再次检查?
- r - 具有来自不同数据帧的多个条件的 mutate()
- css - 如何让自定义 CSS 成为 Shiny 中的主导 CSS?
- hana - 带有输出变量的存储过程示例