如何使用php上传文件并将其移动到透视文件夹, 我正在尝试让脚本自动上传
图像,例如jpg和png到jpg /文件夹 mp3到mp3 /文件夹 和mp4 flv mpeg到mp4文件夹
<?php
$ds = DIRECTORY_SEPARATOR;
$jpg = "jpg/";
$mp3 = "mp3/";
$mp4 = "mp4/";
if (!empty($_FILES))
{
if(substr($_FILES['file']['name'], -3) == "mp3")
{
$destination = substr($_FILES['file']['name'], -3);
$file = $_FILES['file']['name'];
echo "this : " . $mp3,$destination . $ds;
move_uploaded_file($mp3,$destination . $ds ) or die("mp3 error");
echo "uploaded : " . $file . "<br>";
}
else if(substr($_FILES['file']['name'], -3) == "mp4" or substr($_FILES['file']['name'], -3) == "mp4" or substr($_FILES['file']['name'], -4) == "mpeg" )
{
$destination = substr($_FILES['file']['name'], -3);
$file = $_FILES['file']['name'];
move_uploaded_file($mp4,$destination . $ds ) or die("mp4 error");
echo "uploaded : " . $file . "<br>";
}
else if(substr($_FILES['file']['name'], -3) == "jpg" or substr($_FILES['file']['name'], -3) == "png")
{
$destination = substr($_FILES['file']['name'], -3);
$file = $_FILES['file']['name'];
move_uploaded_file($jpg,$destination . $ds ) or die("jpg error");
echo "uploaded : " . $file . "<br>";
}
else
{
}
}
?>
答案 0 :(得分:0)
阅读move_uploaded_file
manual。
第一个参数是&#34;上传文件的文件名。&#34;。你传递了什么:
move_uploaded_file($mp3,$destination . $ds )
$mp3
是文件夹 mp3
。
通常你需要传递$_FILES['file']['tmp_name']
作为第一个参数。
第二个注释 - 连接$destination . $ds
返回什么?
如果是music.mp3
文件,则为mp3/
。
因此,您使用参数调用move_uploaded_file
:
move_uploaded_file('mp3/', 'mp3/');
你真的想要这个吗?
所以,最简单的修复是(对于mp3情况):
move_uploaded_file($_FILES['file']['tmp_name'], $mp3 . $_FILES['file']['name']);
在这种情况下,文件将保存在mp3
文件夹中与文件原始名称相同的级别。
另外,请确保mp3
文件夹存在并具有适当的权限。