enctype就是encodetype就是编码类型的意思。
multipart/form-data是指表单数据有多部分构成,既有文本数据,又有文件等二进制数据的意思。
需要注意的是:默认情况下,enctype的值是application/x-www-form-urlencoded,不能用于文件上传,只有使用了multipart/form-data,才能完整的传递文件数据。
application/x-www-form-urlencoded不是不能上传文件,是只能上传文本格式的文件,multipart/form-data是将文件以二进制的形式上传,这样可以实现多种类型的文件上传。
扩展资料:一、关于HTML <form>标签的 enctype 属性
application/x-www-form-urlencoded:在发送前编码所有字符(默认)
multipart/form-data: 不对字符编码,或在使用包含文件上传控件的表单时,必须使用该值。
text/plain:空格转换为 "+" 加号,但不对特殊字符编码。
二、enctype:规定了form表单在发送到服务器时候编码方式,有如下的三个值。
1、application/x-www-form-urlencoded。默认的编码方式。但是在用文本的传输和MP3等大型文件的时候,使用这种编码就显得 效率低下。
2、multipart/form-data 。 指定传输数据为二进制类型,比如图片、mp3、文件。
3、text/plain。纯文体的传输。空格转换为 “+” 加号,但不对特殊字符编码。
表单中enctype="multipart/form-data"的意思,是设置表单的MIME编码。默认情况,这个编码格式是application/x-www-form-urlencoded,不能用于文件上传;只有使用了multipart/form-data,才能完整的传递文件数据,进行下面的 *** 作.1. 用途HTML表单可以通过enctype属性设定表单内容提交给服务器时,发送的数据的编码方式,具体有三个值:
application/x-www-form-urlencoded,默认的编码方式,传输普通的表单内容(不能传输文件)
multipart/form-data,可用于将文件上传到服务器的编码方式
text/plain,目前使用较少的编码方式,也不推荐使用
2. application/x-www-form-urlencoded 解释
当表单代码如下:
<form>
<input name="username"/>
<input name="password"/>
<button type="submit">submit</button>
</form>
复制
由于没有设置enctype属性,所以采取默认值application/x-www-form-urlencoded,这种方式下当我们输入
username值tom,password值123时,编码后的表单提交内容为:
username=tom&password=123
复制
这种形式通过&分割数据项。
3. multipart/form-data 解释
multipart/form-data编码比较复杂,此处不再给出示例。该编码即可传输普通表单,也可以传输文件,所以编码会比上面的复杂。
所以普通情况下,直接采用默认的编码,当传输文件时,再采取multipart/form-data即可。
4. text/plain解释
text/plain编码方式不同浏览器有不同的实现,也没有一个特别明确的规范,所以建议就是别用
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)