PHP copy() 无法打开流:参数无效
PHP copy() failed to open stream: Invalid argument
我正在尝试从我的浏览器上传文件->PHP 脚本->服务器。
我的浏览器和 PHP 脚本位于同一台服务器上。我在这上面使用 xampp。我必须上传此文件的服务器不同。
这是我的代码:
$fdir = "http:\\myip\D:\errors\";
$ffile = $fdir.basename($_FILES['myfile']['name']);
if (copy($ffile,$_FILES['myfile']['tmp_name'])) {
echo "<br />"."File uploaded successfully";
} else {
echo "<br />"."Error in uploading file";
}
我收到以下错误:
copy(http:\myip\D:\errors\IMG-20150424-WA0004.jpg): failed to open stream: Invalid argument in C:\xampp\htdocs\BS\myphp1.php on line 54
如有任何帮助,我们将不胜感激。
编辑:
我编辑了我的代码以删除 http:// 并使用服务器的名称。
另外我现在使用 move_uploaded_file
而不是 copy
$fdir="\\TESTSRV\D:\errors\";
$ffile=$fdir.basename($_FILES['myfile']['name']);
move_Uploaded_file($_FILES['myfile']['tmp_name'],$ffile);
但它仍然给我错误
move_uploaded_file(\TESTSRV\D:\errors\IMG-20150424-WA0004.jpg): failed to open stream: Invalid argument in C:\xampp\htdocs\BS\myphp1.php on line 54
这不是复制上传文件的方法-您需要使用函数move_uploaded_file
:
if (move_uploaded_file($_FILES['myfile']['tmp_name'], "c:\path\to\file")) {
echo "<br />"."File uploaded successfully";
} else {
echo "<br />"."Error in uploading file";
}
此外,我认为您的 $fdir
变量在 Windows 中不是有效路径。基本上 move_uploaded_file
的第二个参数应该是目标路径,您要将文件移动到的位置。
我正在尝试从我的浏览器上传文件->PHP 脚本->服务器。
我的浏览器和 PHP 脚本位于同一台服务器上。我在这上面使用 xampp。我必须上传此文件的服务器不同。
这是我的代码:
$fdir = "http:\\myip\D:\errors\";
$ffile = $fdir.basename($_FILES['myfile']['name']);
if (copy($ffile,$_FILES['myfile']['tmp_name'])) {
echo "<br />"."File uploaded successfully";
} else {
echo "<br />"."Error in uploading file";
}
我收到以下错误:
copy(http:\myip\D:\errors\IMG-20150424-WA0004.jpg): failed to open stream: Invalid argument in C:\xampp\htdocs\BS\myphp1.php on line 54
如有任何帮助,我们将不胜感激。
编辑:
我编辑了我的代码以删除 http:// 并使用服务器的名称。
另外我现在使用 move_uploaded_file
而不是 copy
$fdir="\\TESTSRV\D:\errors\";
$ffile=$fdir.basename($_FILES['myfile']['name']);
move_Uploaded_file($_FILES['myfile']['tmp_name'],$ffile);
但它仍然给我错误
move_uploaded_file(\TESTSRV\D:\errors\IMG-20150424-WA0004.jpg): failed to open stream: Invalid argument in C:\xampp\htdocs\BS\myphp1.php on line 54
这不是复制上传文件的方法-您需要使用函数move_uploaded_file
:
if (move_uploaded_file($_FILES['myfile']['tmp_name'], "c:\path\to\file")) {
echo "<br />"."File uploaded successfully";
} else {
echo "<br />"."Error in uploading file";
}
此外,我认为您的 $fdir
变量在 Windows 中不是有效路径。基本上 move_uploaded_file
的第二个参数应该是目标路径,您要将文件移动到的位置。