【问题标题】:PHP unable to move uploaded image to destination folderPHP无法将上传的图像移动到目标文件夹
【发布时间】:2014-11-09 12:09:00
【问题描述】:

我正在使用 php 5.3 开发图像上传器脚本 网站在共享 linux 托管下,一切似乎都很好,除了我无法将上传的图像移动到目标文件夹。

警告:move_uploaded_file(images/2014091546_screen.jpg) [function.move-uploaded-file]:无法打开流:第 68 行 /home/user/public_html/upload.php 中的权限被拒绝

警告:move_uploaded_file() [function.move-uploaded-file]:无法在第 68 行的 /home/user/public_html/upload.php 中将“/tmp/phpJwnzVo”移动到“images/2014091546_screen.jpg”

我尝试将文件夹 chown 给“nobody”用户,但它引发了另一个错误

唯一有帮助的是 chmod 文件夹到 0777,但这是一个严重的安全漏洞,所以这不是解决方案。 我尝试使用脚本动态地更改目标文件夹以设置第一个 0777 并在图像到位后恢复为 0755,但似乎 PHP 无权这样做。

由于主机限制,我没有终端或 shell 访问权限,因此没有可使用的命令行选项。

PHP 中有解决方案吗?

提前致谢。

【问题讨论】:

  • 您是否尝试使用您的 PHP 脚本创建文件夹,然后设置 0755?然后检查文件夹所有者
  • 好点!我会给它一个检查和反馈。谢谢
  • 此处不允许使用 Mkdir Warning: mkdir() [function.mkdir]: Permission denied in /home/user/public_html/backend/upload.php on line 67 PHP 用户是 "nobody"

标签: php file-upload


【解决方案1】:
hey it will definitely help u . try this code to move the image to your folder. 
code:
if(move_uploaded_file($_FILES['image']['tmp_name'],'images'.$_FILES['image']['name'])) //path of folder from where you wanted to upload
{
    $tmp=' upload_images'.$_FILES['image']['name'];
    $new = 'upload_images/uploads'.$_FILES['image']['name']; 
    echo "Image successfully";
}

【讨论】:

  • 你的错误是由于您在该位置使用了 hv 图像。
猜你喜欢
  • 1970-01-01
  • 2021-06-21
  • 2018-05-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多