表单同时有中文字段和文件上传,加上enctype="multipart/form-data"后导致的中文乱码问题
因为一个表单需要同时上传字段和文件,所以加上enctype="multipart/form-data",但是上传后的中文字段变成了乱码。

把enctype="multipart/form-data"和文件上传去掉,中文字段恢复正常。在检查了<meta charset="UTF-8">和php.ini的default_charset = "utf-8"设置无误后还是乱码。
问题解决:
php的文档了写明了,HTTP 输入/输出字符编码转换同样也适用于二进制数据。 如果 HTTP 输入/输出用到了二进制数据,用户应当控制字符的编码转换。
;;禁用 HTTP 输入转换
mbstring.http_input = pass
的
表单同时有中文字段和文件上传,加上enctype="multipart/form-data"后导致的中文乱码问题的更多相关文章
- PHP表单处理、会话管理、文件上传、文件处理、执行函数(10.8 第十六天)
表单处理 服务器接收用户发过来的数据方式: $_GET 接收用户以GET方式发过来的数据 $_POST 接收用户以POST方式发过来的数据 $_COOKIE 接收用户COOKIE $_REQUEST ...
- jsp中文件上床的enctype="multipart/form-data"用法
jsp表单中必须要有enctype="multipart/form-data"才能文件上传的意思,是设置表单的MIME编码.默认情况,这个编码格式是application/x-ww ...
- .net core 3.0web_razor page项目_使用中间件接受大文件上传报错_httpRequest.Form threw an exception of type Microsoft.AspNetCore.Server.Kestrel.Core.BadHttpRequestException_Request body too large
前言:在web项目的.net framework时文件上传时,自己常用一般处理程序接受上传文件,上传文件的大小限制是可以项目的webconfig里配置. 到core项目使用一般处理程序变成了中间件 ...
- jquery-ajax实现文件上传异常处理web.multipart.MultipartException
异常如下: org.springframework.web.multipart.MultipartException: The current request is not a multipart r ...
- python接口自动化测试——简单的文件上传代码实现,人人网登陆后上传图片举例
import requests '''人人网登陆,图片上传 '''def loginData(): '''登录请求参数''' data = { 'email': '13484545195', 'ico ...
- 前端 HTML form表单标签 input标签 type属性 file 上传文件
加上上传文件功能 input type='file' - 依赖form表单里一个属性 enctype="multipart/form-data" 加上这个属性表示把你上次文件一点 ...
- vuetify | vue | 文件上传组件 | file | upload | form input[type="file"]
今天无聊地写vuecli3听歌的时候,遇到了上传文件到Django的自我需求,然后就到vuetify的表单组件里找upload btn,发现居然没有!!! 顿时惊了个呆,要知道之前用element做操 ...
- AngularJs 文件上传(实现Multipart/form-data 文件的上传)
<!-- 上传yml文件 --> <div class="blackBoard" ng-show="vm.showUpop==true"> ...
- form 表单添加 enctype ="multipart/form-data" 属性后后台接收中文乱码
解决办法: new String( request.getParameter("title").getBytes("ISO-8859-1"),"utf ...
随机推荐
- js 当前系统时间
<script language=Javascript> function time(){ //获得显示时间的div t_div = document.getElementById('sh ...
- jQuery+Ajax+PHP+Mysql实现分页显示数据
css <style type="text/css"> #loading{ position: absolute; top: 200px; left:400px; } ...
- gcc-gdb
1.使用gdb ,习惯了cgdb ,加上了vim. 调试发现,使用了stl,不知如何查看使用的vector,stack等中的值,来吧.gdb-std-views.下载 1)下载好之后,mv stl-v ...
- GO函数倒叙输出
package main import "fmt" func main(){ rec() } func rec(i int){ { return } rec(i+) fmt.Pri ...
- Android-4
显式Intent 隐式Intent Intent过滤器相关选项 通过浏览器链接启动本地Activity
- 总结 xib
总结 其实,你完全不需要做一个 “艰难的决定”,你可以像 QQ 和微信那样,根据具体情况来选择性的使用 xib 和 storyboard.这里有我的一些建议: 对于复杂的.动态生成的界面,建议使用手工 ...
- QT中读取文本数据(txt)
下面的代码实现读取txt文档中的数据,并且是一行一行的读取. void MainWindow::on_pushButton_clicked() { QFile file("abcd.txt& ...
- CryEngine3教程合辑
转载自http://tieba.baidu.com/p/3663800102 作者:Tytaa 中文名称: CryEngine游戏关卡设计训练视频教程第一季 外文名称: 3DMotive In ...
- 减少芯片失效:芯片焊接(die Attach)工艺优化
在器件的生产过程中,芯片焊接是封装过程中的重点控制工序.此工艺的目的是将芯片通过融化的合金焊料粘结在引线框架上,使芯片的集电极与引线框架的散热片形成良好的欧姆接触和散热通路.由于固体表面的复杂性和粘结 ...
- 简单工厂模式 - OK
简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例.简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现. 使用场景: 工厂类负责创建的对象比较少: 客户只知道传 ...