<?php
//允许上传的图片格式
$allowedExts = array("gif","jpeg","jpg","png");
$temp = explode(".",$_FILES["file"]["name"]);
$extension = end($temp); //获取文件名后缀
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/jpg")
|| ($_FILES["file"]["type"] == "image/pjpeg")
|| ($_FILES["file"]["type"] == "image/x-png")
|| ($_FILES["file"]["type"] == "image/png"))
&& ($_FILES["file"]["size"] < 204800) //小于 200 kb
&& in_array($extension,$allowedExts))
{
if ($_FILES["file"]["error"] > 0)
{
echo "错误:" . $_FILES["file"]["error"] . "
";
}
else
{
echo "上传文件名: " . $_FILES["file"]["name"] . "
";
echo "文件类型: " . $_FILES["file"]["type"] . "
";
echo "文件大小: " . $_FILES["file"]["size"] . "
";
echo "文件临时存储的位置: " . $_FILES["file"]["tmp_name"] . "
" ;
// 判断当期目录下的 upload 目录是否存在该文件
// 如果没有 upload 目录,你需要创建它,upload 目录权限为 777
if(file_exists("upload/" . $_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"] . "文件已经存在。";
}
else
{
// 如果 upload 目录不存在该文件则将文件上传到 upload 目录下
move_uploaded_file($_FILES["file"]["tmp_name"], "downloads/" . $_FILES["file"]["name"]);
echo "文件存储在: " . "/users/donghailin/downloads" . $_FILES["file"]["name"];
}
}
}
else
{
echo "非法的文件格式";
}
?>
上传文件名: WechatIMG2.jpeg
文件类型: image/jpeg
文件大小: 89980
文件临时存储的位置: /private/var/tmp/phpWtYsD9
Warning: move_uploaded_file(downloads/WechatIMG2.jpeg): failed to open stream: No such file or directory in /Users/donghailin/Sites/upload.php on line 35
Warning: move_uploaded_file(): Unable to move '/private/var/tmp/phpWtYsD9' to 'downloads/WechatIMG2.jpeg' in /Users/donghailin/Sites/upload.php on line 35
文件存储在: /users/donghailin/downloadsWechatIMG2.jpeg
问题:只能存临时文件,不能转移到其他文件夹,知道是(upload 目录权限为 777)问题,具体要怎么操作?