【问题标题】:can't move_uploaded_file to folder无法将_uploaded_file 移动到文件夹
【发布时间】:2014-06-12 07:02:42
【问题描述】:

我可以将文件夹路径插入数据库,但图片文件似乎没有移动到该文件夹​​中?

$pic = $_POST['pic'];

$picName= $_FILES['pic']['name'];

$type = $_FILES['pic']['type'];

$tmp = $_FILES['pic']['tmp'];

$picPath = "/pictures/";

  if(is_uploaded_file($tmp)) {
        if(move_uploaded_file($tmp, $picPath . $picName)) {
            echo "congrats! Image is uploaded.";
        }
        else {
            echo "Sorry, couldn't move your picture.";
        }
    }
    else {
        echo "Sorry, couldn't upload your picture.";
    }

$picPath = $picPath . $picName;

mysql_query("INSERT INTO User(pic) VALUES ('$picPath')");

我收到此回显消息:抱歉,无法上传您的图片。

php 文件保存在 public_html 文件夹中,我有一个图片文件夹,我想将用户图片移动到其中。

插入有效,因为我可以将 $picPath 存储在我的数据库中,但图片不会存储在我的文件夹中。

【问题讨论】:

    标签: php mysql image path


    【解决方案1】:

    尝试替换

    $tmp = $_FILES['pic']['tmp'];
    

    $tmp = $_FILES['pic']['tmp_name'];
    

    【讨论】:

    • 谢谢。我不知道为什么“tmp_name”起作用而不是“tmp”。虽然我怀疑这是一个需要的关键字。
    • 这些数组是由 PHP 设置的,必须是 'tmp_name',因为 PHP 就是这样做的
    【解决方案2】:

    1) 检查文件夹权限是否可写。
    2)确保您的路径与代码中的相同文件夹名称相同。
    3) 尝试从 $picPath = "/pictures/"; 更改为 $picPath = "pictures/"; 删除正斜杠。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-02
      • 2017-09-29
      • 1970-01-01
      • 2019-11-19
      • 1970-01-01
      • 1970-01-01
      • 2016-10-11
      • 1970-01-01
      相关资源
      最近更新 更多