
正文
php发送数据中文乱码 php发送数据包
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
PHP 输出简单的中文 乱码问题
解决php中中文乱码问题方法
php文件本身的编码与网页的编码应匹配
a. 如果欲使用gb2312编码php发送数据中文乱码,那么php要输出头:header(“Content-Type: text/html; charset=gb2312")php发送数据中文乱码,静态页面添加meta http-equiv="Content-Type" content="text/html; charset=gb2312"php发送数据中文乱码,所有文件的编码格式为ANSI,可用记事本打开,另存为选择编码为ANSI,覆盖源文件。
b. 如果欲使用utf-8编码,那么php要输出头:header(“Content-Type: text/html; charset=utf-8"),静态页面添加meta http-equiv="Content-Type" content="text/html; charset=utf-8",所有文件的编码格式为utf-8。保存为utf-8可能会有点麻烦,一般utf-8文件开头会有BOM,如果使用session就会出问题,可用editplus来保存,在editplus中,工具-参数选择-文件-UTF-8签名,选择总是删除,再保存就可以去掉BOM信息了。
php本身不是Unicode的,所有substr之类的函数得改成mb_substr(需要装mbstring扩展)php发送数据中文乱码;或者用iconv转码。
如果你的HTML文件文件出现了乱码问题,那么你可以在head标签里面加入UTF8编码(国际化编码):UTF-8是没有国家的编码,也就是独立于任何一种语言,任何语言都可以使用的。
扩展资料:
解决PHP 输出简单的中文 乱码问题的其他方法:
在php的echo前面加入header("Content-Type:text/html;charset=gb2312")
把meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /中的UTF-8改成gb2312
参考资料:
百度百科-PHP
相关问答
Q1: 求救!表单通过php提交数据到mysql中文乱码
1、页面代码里面要设置charset=utf-8
2、保存页面文件时要编码格式为utf-8
3、数据库有关的表、字段、的编码为utf8-general-ci
还不对的话,看下面。
我是这样解决的:
$dbh = new PDO('mysql:host=localhost;dbname=test','root','');
$dbh-exec("SET NAMES 'utf8';");
或者没用PDO
mysql_query("set names 'utf-8'");
Q2: 如何解决php中文参数传递乱码情况
php用中文参数没问题php发送数据中文乱码的 问题出在别处 比如显示页的编码 如果php发送数据中文乱码你找不到问题所在 可以用 base64_encode($tag)处理一下$tag 接收的时候再用 base64_decode($tag)即可
Q3: 我PHP设置的是UTF-8,数据库设置的是UTF8-general-ci,从页面发送数据给数据库后数据库显示的是乱码是为啥
试试把下面类似语句放到连接语句之后
mysql_query("SET NAMES UTF8");
或 PDO
$dbh-exe("SET NAMES UTF8");
用 SET NAMES UTF8 校正一下连接编码
因为PHP 连接数据库的过程中会经过三次编码转换,比如输出的的时候
MySql Server(UTF-8) - PHP Connection( Latin1) - UTF8页面的Result(UTF-8) 这时两种编码不兼容则产生乱码。
Q4: PHP在显示数据库中的中文数据时显示乱码
其实php发送数据中文乱码,只要注意文件编写的时候编码、数据库的编码一般就不会有这个问题的,但是,比如php发送数据中文乱码你用DW(dwcs4貌似没有这个现象)打开文件,它会以默认的编码读取,一旦你保存php发送数据中文乱码了,那就完了,用EditPlus打开之后,右下角有编码提示,如果发现不对,另存为,覆盖一下,就可以了
Q5: PHP中文乱码
meta 头里 写 是 gbk 或者 gb2312 没有叫 gbk2312的
1. 检查PHP文件本身的编码 ,一般在 editplus 打开后 右下角能看到 ansi 就算正常了。
2. 写meta标记
3. 查看数据库本身的编码, 还有数据表 ,文本型字段的编码。 这些在 phpmyadmin里就能看到
4. $result-query("set names gbk") 这个当然要用。
5. 还有一种可能是 你插入数据的页面 和 显示数据的页面 编码不相同,
你先检查上面的 所有编码 然后把数据删除了 ,重新插入 在看看
关于php发送数据中文乱码和php发送数据包的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。





