先记下,免得以后想不起来又到处去找! PHP操作数据库的时候,数据库中数据使用UTF8编码,在读出来的时候,显示的全是???????问号乱码,找了一些资料原来是在读取之前进行一次编码设置: <div class="codetitle"><a style="CURSOR: pointer" data="35165" class="copybut" id="copybut35165" onclick="doCopy('code35165')"> 代码如下:<div class="codebody" id="code35165"> create table tablename ( id int not null auto_increment, title varchar(20) not null, contnet varchar(300) defalut null, primary key ('id') )begin=MyISAM DEFAULT CHARSET =UTF8; 在插入数据之前执行: <div class="codetitle"><a style="CURSOR: pointer" data="26879" class="copybut" id="copybut26879" onclick="doCopy('code26879')"> 代码如下:<div class="codebody" id="code26879"> mysql_query("SET NAMES utf8"); 然后 mysql_query("insert into tablename .....") 读出数据之前执行: <div class="codetitle"><a style="CURSOR: pointer" data="26879" class="copybut" id="copybut26879" onclick="doCopy('code26879')"> 代码如下:<div class="codebody" id="code26879"> mysql_query("SET NAMES utf8"); 然后 mysql_query("select * from tablename") 注意:此处读出的编码是把原来编码的内容重新经过编码后输出的,比如输出内容所在页面是GBK编码,那么在读出的时候在页面显示也为乱码,所以在查询之前执行 mysql_query("SET NAMES gbk"),在页面就可以正常显示GBK编码的文字内容 。 (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|