加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

使用Jasny文件输入使用PHP将文件上传到服务器

发布时间:2020-12-13 21:50:40 所属栏目:PHP教程 来源:网络整理
导读:我正在实现 Jasny File Input插件.但是,我无法将其上传到服务器. HTML form method="post" id="formCreateMod" class="form form-horizontal" enctype="multipart/form-data" role="form" div class="fileinput fileinput-new" data-provides="fileinput" di
我正在实现 Jasny File Input插件.但是,我无法将其上传到服务器.

HTML

<form method="post" id="formCreateMod" class="form form-horizontal" enctype="multipart/form-data" role="form">
    <div class="fileinput fileinput-new" data-provides="fileinput">
         <div class="fileinput-preview thumbnail" data-trigger="fileinput"></div>
         <div>
              <span class="btn btn-default btn-file"><span class="fileinput-new">Select image</span><span class="fileinput-exists">Change</span><input type="file" name="img"></span>
              <a href="#" class="btn btn-default fileinput-exists" data-dismiss="fileinput">Delete</a>
         </div>
    </div>
</form>

以上代码段位于< form>内.标签.然后我在jQuery中使用post将表单的序列化数据发送到服务器.

我希望通过使用$_FILES [‘img’] [“name”]或$_FILES [‘img’] [“type”]获取php中的内容,但结果为NULL.

那么在图像发布后我应该如何在php中检索图像数据?

任何帮助将不胜感激!

更新

以下是我在jQuery中发布表单的方法.

var theForm = $('form');
$.post(location.href,theForm.serialize(),function(data) {
    // handle return data
});

解决方法

您不能使用ajax和表单序列化发布文件.

你应该检查this answer,这解释了原因.

但是,您仍然有解决方案:

>不使用ajax,只使用表单上的enctype =’multipart / form-data’属性提交表单

<form [...] enctype='multipart/form-data'></form>

>使用FormData

var formData = new FormData();

// HTML file input user's choice...
formData.append("userfile",fileInputElement.files[0]);

var request = new XMLHttpRequest();
request.open("POST","http://foo.com/submitform.php");
request.send(formData);

>使用File API

var reader = new FileReader();

reader.onload = function(e) {
  var rawData = reader.result;
}

reader.readAsBinaryString(file);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读