gpt4 book ai didi

php - 警告 : copy(. .):无法打开流:中没有这样的文件或目录

转载 作者:行者123 更新时间:2023-12-04 00:09:05 26 4
gpt4 key购买 nike

我对 PHP 还很陌生,正在尝试创建一个简单的 PHP 文件上传系统。

我按照 (http://www.phpeasystep.com/phptu/2.html) 的教程进行操作。我只更改了 $HTTP_POST_FILES,因为它给了我错误,而且从我读到的内容来看,它在 PHP 中是旧的。

我收到的错误消息较少,但我在 copy() 函数中收到错误,并给出以下错误消息:

Warning: copy(Task2/uploads/anonymous.jpg): failed to open stream: No such file or directory in C:\xampp\htdocs\Task2\upload.php on line 13

Warning: copy(Task2/uploads/DSCF4639.JPG): failed to open stream: No such file or directory in C:\xampp\htdocs\Task2\upload.php on line 14

Warning: copy(Task2/uploads/jien maroon.jpg): failed to open stream: No such file or directory in C:\xampp\htdocs\Task2\upload.php on line 15

我认为这是权限问题(Windows 7 中的读/写权限),但从谷歌快速搜索看来,XAMPP 默认设置为处理 Win 7 上的权限。

这是代码:

<?php

//set where you want to store files
//in this example we keep file in folder upload
//$_FILES['ufile']['name']; = upload file name
//for example upload file name cartoon.gif . $path will be upload/cartoon.gif

$path1= "Task2/uploads/".$_FILES['ufile']['name'][0];
$path2= "Task2/uploads/".$_FILES['ufile']['name'][1];
$path3= "Task2/uploads/".$_FILES['ufile']['name'][2];

//copy file to where you want to store file
copy($_FILES['ufile']['tmp_name'][0], $path1);
copy($_FILES['ufile']['tmp_name'][1], $path2);
copy($_FILES['ufile']['tmp_name'][2], $path3);

//$_FILES['ufile']['name'] = file name
//$_FILES['ufile']['size'] = file size
//$_FILES['ufile']['type'] = type of file
echo "File Name :".$_FILES['ufile']['name'][0]."<BR/>";
echo "File Size :".$_FILES['ufile']['size'][0]."<BR/>";
echo "File Type :".$_FILES['ufile']['type'][0]."<BR/>";
echo "<img src=\"$path1\" width=\"150\" height=\"150\">";
echo "<P>";

echo "File Name :".$_FILES['ufile']['name'][1]."<BR/>";
echo "File Size :".$_FILES['ufile']['size'][1]."<BR/>";
echo "File Type :".$_FILES['ufile']['type'][1]."<BR/>";
echo "<img src=\"$path2\" width=\"150\" height=\"150\">";
echo "<P>";

echo "File Name :".$_FILES['ufile']['name'][2]."<BR/>";
echo "File Size :".$_FILES['ufile']['size'][2]."<BR/>";
echo "File Type :".$_FILES['ufile']['type'][2]."<BR/>";
echo "<img src=\"$path3\" width=\"150\" height=\"150\">";

///////////////////////////////////////////////////////

// Use this code to display the error or success.

$filesize1=$_FILES['ufile']['size'][0];
$filesize2=$_FILES['ufile']['size'][1];
$filesize3=$_FILES['ufile']['size'][2];

if($filesize1 && $filesize2 && $filesize3 != 0)
{
echo "We have recieved your files";
}

else {
echo "ERROR.....";
}

//////////////////////////////////////////////

// What files that have a problem? (if found)

if($filesize1==0) {
echo "There're something error in your first file";
echo "<BR />";
}

if($filesize2==0) {
echo "There're something error in your second file";
echo "<BR />";
}

if($filesize3==0) {
echo "There're something error in your third file";
echo "<BR />";
}
?>

任何帮助将不胜感激!

谢谢!

最佳答案

确保目标目录存在,复制不会为你创建目录。

第二个参数是文件权限,对安全很重要,阅读更多:https://wiki.archlinux.org/index.php/File_permissions_and_attributes

第三个参数也将创建递归目录。

if (!is_dir($directory)) {
mkdir($directory, 0777, true);
}

关于php - 警告 : copy(. .):无法打开流:中没有这样的文件或目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13688024/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com