首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >上传图片失败

问上传图片失败
EN

Stack Overflow用户
提问于 2013-08-16 22:13:47
回答 1查看 84关注 0票数 2

我在HTML做了一个表单,可以选择上传图片。问题是,当我在$_FILES代码中检查php数组时,找不到它。

HTML表格:

代码语言:javascript
复制
<form method="POST" action="addProduct.php" onsubmit="return checkValidation()"> 
Image(optional): <input type="file" name="fileImg" accept="image/*" id="fileImg">
<input id="submitProduct" type="submit" name="submitBtn" value="Submit product" onclick="checkValidation()"/>
</form>

checkValidation()函数:

代码语言:javascript
复制
function checkValidation(){
    var regex = /\.(jpg|JGP|jpeg|JPEG|png|PNG|gif|GIF)$/;
    if (($('#fileImg').val()) && (!(regex.test($('#fileImg').val()))))
    {
        return false;
    }
}

和php代码:

代码语言:javascript
复制
if(isset($_POST["submitBtn"])){
    if(!(empty($_FILES)))
    {
        if (file_exists('uploads/'.$_FILES["fileImg"]["name"]))
        {
            echo $_FILES["fileImg"]["name"]." already exists. ";
        }
        else
        {
            move_uploaded_file($_FILES["fileImg"]["tmp_name"], 'uploads/'. $_FILES["fileImg"]["name"]);
            $path = $_FILES["fileImg"]["name"];
        }
    }
    else
        $path = 'no_photo.jpg';

问题是,在php代码中,它总是跳到else分支(这给了我一些默认的图像)。

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-16 22:19:06

您的表单缺少enctype='multipart/form-data'属性。没有它,$_FILES将永远是空的。

在这里阅读更多相关信息:What does enctype='multipart/form-data' mean?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18282904

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档