PHP拒绝上传图片
我正在做一个项目,但在测试上传图片功能时,它一直给我错误。该网站位于Portal.website.com链接上(所以不是www,如果这很重要的话不知道) 无论如何,我得到的信息是: 警告:move_uploads_文件(img/uploads/img_20160402_244056496.jpg)[function.move uploads file]:无法打开流:第33行的/home/xxx/domains/website.com/public_html/portal/artikeltovoegen.php中没有此类文件或目录 及 警告:move_upload_file()[function.move upload file]:无法将第33行的“/tmp/phpf277z2”移动到/home/xxx/domains/website.com/public_html/portal/artikeltovoegen.php中的“img/uploads/img_20160402_244056496.jpg” 这里是php的一部分,表单本身是非常标准的,可以完美地工作PHP拒绝上传图片,php,Php,我正在做一个项目,但在测试上传图片功能时,它一直给我错误。该网站位于Portal.website.com链接上(所以不是www,如果这很重要的话不知道) 无论如何,我得到的信息是: 警告:move_uploads_文件(img/uploads/img_20160402_244056496.jpg)[function.move uploads file]:无法打开流:第33行的/home/xxx/domains/website.com/public_html/portal/artikeltovoe
if (isset($_POST['uploadArticle']))
{
$title = $_POST['title'];
$article = $_POST['article'];
$files = $_FILES['files'];
$valid_formats = array("jpg", "png", "gif", "zip", "bmp");
$max_file_size = 1024*1000; //1000 kb
$count = 0;
foreach ((array) $_FILES['files']['name'] as $f => $name)
{
if ($_FILES['files']['error'][$f] == 4)
{
continue; // Skip file if any error found
}
if ($_FILES['files']['error'][$f] == 0)
{
if ($_FILES['files']['size'][$f] > $max_file_size)
{
$message[] = "$name is too large!.";
continue; // Skip large files
}
elseif( ! in_array(pathinfo($name, PATHINFO_EXTENSION), $valid_formats) )
{
$message[] = "$name is not a valid format";
continue; // Skip invalid file formats
}
else
{
// No error found! Move uploaded files
if(move_uploaded_file($_FILES["files"]["tmp_name"][$f],"img/uploads/".$name))
{
$count++; // Number of successfully uploaded file
echo $count;
}
}
}
}
}
由于错误提示您传递到移动\u上传的\u文件的路径不存在 如果img文件夹与调用move_Upload_file的php文件位于同一目录中,请尝试使用相对url:
if(move_uploaded_file($_FILES["files"]["tmp_name"][$f],"./img/uploads/".$name))
通过在img前面添加.,因为错误表明要移动上传的文件的路径不存在 如果img文件夹与调用move_Upload_file的php文件位于同一目录中,请尝试使用相对url:
if(move_uploaded_file($_FILES["files"]["tmp_name"][$f],"./img/uploads/".$name))
通过在img前面添加.好的,所以碰巧是我试图写入的文件夹的服务器权限。我把它从755改成了777,现在它可以正常工作了
希望有人能使用此信息好吧,这恰好是我试图编写的文件夹的服务器权限。我把它从755改成了777,现在它可以正常工作了
希望有人能使用此信息您是否尝试过输入完整的url?也不走运,不幸的是您是否尝试输入完整的url?也不走运,不幸的是您是否检查了文件夹
/home/xxx/domains/website.com/public\u html/portal/img/uploads
是否确实存在?它不会以这种方式为您创建文件夹。它是,我自己创建的。权限是什么?你可以发布namei-l/home/xxx/domains/website.com/public_html/portal/img/uploads
用户的输出吗?Web服务器正在按需运行,路径中的所有目录上都有+x,上一个目录上的+x
恰好是权限是。将其从755更改为777。我从来没有遇到过这个问题,但我现在会记得。你检查过文件夹/home/xxx/domains/website.com/public\u html/portal/img/uploads
是否已经存在了吗?它不会以这种方式为您创建文件夹。它是,我自己创建的。权限是什么?你可以发布namei-l/home/xxx/domains/website.com/public_html/portal/img/uploads
用户的输出吗?Web服务器正在按需运行,路径中的所有目录上都有+x,上一个目录上的+x
恰好是权限是。将其从755更改为777。我从来没有遇到过这个问题,但现在我会记住的。chmod很重要,chown也很重要;确保同样拥有lucaschmod文件夹的是web服务器用户和组,chown也很重要;确保文件夹的所有者是web服务器用户和组