数据库php乱码怎么解决-PHP问题

资源魔 22 0

数据库php乱码怎样处理?

比来正在应用Apache+php+MySql操练网站编写,正在存储数据的进程中,HTML表单中输出的中文经过php存入数据库外面显示是乱码,baidu了一下,各类说法都有,真的操碎了心,不外仍是看到几条有用的信息,就是不论是中文的仍是英文和其余字符,编码格局都设置成utf8这类格局。

保举:《PHP教程》

一、正在html代码中加之这句:

<metahttp-equiv=”Content-Type” content=”text/html; charset=utf-8″>,这个来界说网页的编码,正在衔接数据库,抉择详细数据库后,用mysql_qurry(“set names utf8”);来设置数据库的编码以及html编码分歧。用的是zend studio开发环境,开发环境也有其代码显示的编码,以是也要改为utf8格局。另一个就是正在创立数据库表的时分也是很要害的,例如正在phpMyAdmin数据库中,创立一张tb_product表时分:也要设置外面字段的编码形式,多说无用,看图1吧: 正在中下地位将Collation设置为utf8-general-ci编码

daf6efa8014bf25e1ea72dab2e7b229.png

图1

b4c9495f1e55dea32205ec30a10e4d5.png

图2

二、要是创立表的时分遗记设置这个属性了,也不必担忧,另有办法,起首抉择要修正属性的表,点击Operations修正其属性,同时能够勾上changeall column这个,确定便可,如图2所示.为了进一步保障没有呈现乱码,还能够对 该表中的某些字段或许以是字段辨别增加utf8-general-ci。详细操作:点击需求修正的表(tb_product)->Structure->check all->change,而后再独自设置每一个字段的Collation。如图3所示.

1b2010dfa84c3fed10752b92591d66a.png

图3

留意:要是没对整个表抉择编码为utf8-general-ci,而只是对表中的某些字段设置成utf8-general-ci格局,经过Operation查看表的属性,仍是会看到整个表的编码为:如gbk-chinese-ci这类格局的话,假如Html编码是utf8,那仍是会呈现乱码的,以是最要害的是对整个表的Collation设置为utf8-general-ci。如图4以及图5,图4中尽管pro_name以及pro_producer看起来是utf8-general-ci编码,可是经过查看整个表的编码仍是如gbk格局,编码纷歧致,以是极可能正在表中仍是会呈现乱码。

好了,总结一下,长话短说,四点:

一、 如正在zend studio中编写php,html代码,起首将创立的工程的显示编码格局为utf8格局;

二、 正在html中应用<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″>要编写的网页显示的编码格局;

三、 衔接数据库的时分正在抉择某个数据库后(没有是表)应用mysql_qurry(“set names utf8”);

四、 就是下面提到的创立数据库的时分将整个表的编码格局设置为utf8-general-ci。

518f57094a0140e1659765e6e73b373.png

图4

b3f76d9938ac8cb419e1b17e66a5dfa.png

图5

以上就是数据库php乱码怎样处理的具体内容,更多请存眷资源魔其它相干文章!

标签: php php教程 php故障解决 php使用问题

抱歉,评论功能暂时关闭!