php开发测试-mysql数据库中文乱码

作者:  耕堂 | 本文浏览729次 | 2010年01月25日

php与数据库之间进行数据交流,经常会有乱码问题,这类问题很多,本文只涉及:php前台中文正常输出而后台数据库相应字符为乱码的解决。数据库以mysql为例。

mysql数据库后台一般用phpmyadmin控制管理,对于编码一般为:

mysql连接校对:utf8_general_ci
language:中文-Chinese simplified

php页面编码设置为utf-8,比如在DW中页面头部可以看到(php页面不一定非要有这个meta):

<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8” />

数据库表各个字段整理设置为utf8_general_ci(一般在创建表时):

CREATE TABLE table
(
…….
)TYPE=MyISAM DEFAULT CHARSET=utf8
……

当前台后台都设置好编码,php请求页面与mysql数据库交流时,前台中文字符正常而数据库却显示乱码,参考解决方法:

mysql_query(“SET character_set_connection=utf8, character_set_results=utf8, character_set_client=binary”, $connect);

$connect为连接数据库,每次与数据库链接(包括写入和读出数据)都设置utf8编码;

在php页面可以强制编码:

<? header(“content-type:text/html; charset=utf-8″);?>

和上面说的DW中的meta应该意思差不多;

php前台页面和数据库字符不一致,一般就是与数据库连接时发生问题(输入和读出);

 右上方更多相关内容/站内搜索-关键词请用空格隔开

  • 标签 :  ,
  • 原文链接 : http://www.gengtang.net/dian-di/php-mysql-luanma.html
  • 转载原创文章请注明 : 耕堂-gengtang.net
  • 发表留言

    可用HTML标签:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>