PHP文件上传,图片未发布

时间:2018-08-31 15:49:33

标签: php html forms file

我正在尝试创建一个上载文件的表单,问题是该文件不会被上载。在我的代码中,它返回“未上传图片”。 我在网上进行了大量搜索,所有示例都使用相同的代码。 代码:

<?php
if (isset($_FILES['image_url']) && is_uploaded_file($_FILES['image_url']['tmp_name'])) {
    $is_img = getimagesize($_FILES['image_url']['tmp_name']); //Is an image?
    if (!$is_img) {
        $userfile_name = "It isn't an image";
    }
    else {
        if (!file_exists("/images/products/" . $_FILES['image_url']['name'])) {
            $uploaddir = '/images/products/';
            $userfile_tmp = $_FILES['image_url']['tmp_name'];
            $userfile_name = $_FILES['image_url']['name'];
            move_uploaded_file($userfile_tmp, $uploaddir . $userfile_name);
        }
        else {
            $userfile_name = $_FILES['image_url']['name'];
        }
    }
}
else {
    $userfile_name = "Image not uploaded";
}

?>
  <form method="POST" action="<?php echo $_SERVER['PHP_SELF']; ?> " enctype=”multipart/form-data”>
    <p><label for="image">Immagine: </label>
    <input type="file" name="image_url"/></p>
    <p><input type="submit" value="Salva" /></p>
  </form>

该表单还具有其他字段,并且数据已正确发送到服务器。

1 个答案:

答案 0 :(得分:0)

尝试一下

 <?php
if (isset($_FILES['image_url']) && is_uploaded_file($_FILES['image_url']['tmp_name'])) {
    $is_img = getimagesize($_FILES['image_url']['tmp_name']); //Is an image?
    if (!$is_img) {
        $userfile_name = "It isn't an image";
    }
    else {
        if (!file_exists("images/products/" . $_FILES['image_url']['name'])) {
            $uploaddir = 'images/products/';
            $userfile_tmp = $_FILES['image_url']['tmp_name'];
            $userfile_name = $_FILES['image_url']['name'];
            move_uploaded_file($userfile_tmp, $uploaddir . $userfile_name);
        }
        else {
            $userfile_name = $_FILES['image_url']['name'];
        }
    }
}
else {
    $userfile_name = "Image not uploaded";
}

?>
  <form method="POST" action="<?php echo $_SERVER['PHP_SELF']; ?> " enctype="multipart/form-data">
    <p><label for="image">Immagine: </label>
    <input type="file" name="image_url"/></p>
    <p><input type="submit" value="Salva" /></p>
  </form>