当前位置:Gxlcms > mysql > 浅谈MySQL+PHP产生乱码的原理及解决方法(2)_MySQL

浅谈MySQL+PHP产生乱码的原理及解决方法(2)_MySQL

时间:2021-07-01 10:21:17 帮助过:26人阅读

 修改表的编码:

  ALTER TABLE 'category' DEFAULT CHARACTER SET utf8 COLLATE utf8_bin


  以上命令就是将一个表category的编码改为utf8。

  修改字段的编码:

ALTER TABLE 'test' CHANGE 'dd' 'dd' VARCHAR( 45 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL


  以上命令就是将test表中dd的字段编码改为utf8。

  如果是这种情况容易解决,只需检查下页面,修改源文件的charset即可。

  这种情况也是修改页面charset即可。

  在连接数据库的语句中。

mysql_connect('localhost','user','password'); mysql_select_db('my_db'); mysql_query("set names utf8;"); //select 数据库之后加多这一句


  为了避免PHP页面乱码的发生,PHP页面开始第一句

  header("content-type:text/html; charset=utf-8"); //强行指定页面的编码,以避免乱码

  注意:照以上方法修改以后只能保证你新插入的数据不会乱码,举个例:如果你用户已提交的数据是BIG5,你却想通过以上方法改为可以在GB2312的网页正确显示是不可能的, 这种文字内码的变换只能通过另写程序来解决。

人气教程排行