作者bobju (宝贝猪)
看板PHP
标题Re: [请益] 用Dreamweaver对mysql查询中文问题
时间Tue Jul 21 01:05:52 2009
个人经验分享:
1 资料库用utf8编码
2 在php当中连上mysql後, 再补上: mysql_query("SET NAMES 'utf8'");
3 网页上的meta加上这条:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
一般以上三点都会注意到, 以下这一点可能会被忽略:
4 php程式用unicode(UTF8)编码格式存档. 我用的是ultraedit, 会用
"ASCII to UTF8"将程式码转成unicode存档.
假设说: 在php程式当中写了这样的一道sql:
<?php
//...
$sql="select * from members where name like '王%'";
$rs=mysql_query($sql,$link);
?>
如果这个php程式是ASCII编码的, 那麽这个'王'字就是big5编码, 自然无法在
utf8的资料库中比对到想要的资料.
如果这个php程式是unicode(UTF8)编码的, 那麽这个'王'字自然也是, 这样才
能在utf8资料库中比对到相要的资料.
※ 引述《chinleock (Jinn)》之铭言:
: 各位前辈,
: 小弟最近在用Dreamweaver CS3写一个类似於显示分页清单的php程式,
: 而清单内容是从mysql捞资料出来展示
: 但是小弟我遇到一个问题是,
: 凡是遇到捞资料的条件出现中文,比如说
: SELECT *
: FROM db1
: WHERE name='测试'
: 我就无法取得资料,但是若是条件中无出现中文我就可顺利获得资料,如
: SELECT *
: FROM db1
: WHERE name='test'
: 我是用Dreamweaver CS3系结资料集的方式去跟mysql连结,
: 在资料库连结设定中也加入utf8的校正
: 而资料库本身的语系设定和校正也应该无问题,
: 因为我把相同的SQL码打在phpMyAdmin中直接执行是能够搜寻到我要的资料的
: 所以我想应该是Dreamweaver CS3在与资料库连结时的编码问题
: 不知道有没有有经验的前辈可以分享一下应该如何解决
: 因为资料库的内容不少,若无法用中文查询必须先转成英文的话会是一项大工程
: 希望能够直接用Dreamweaver对资料库作中文的query
: 谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.104.184.87
1F:推 chinleock :感谢,我没有注意存档编码的问题,我再试试看 07/21 08:49
2F:→ chinleock :谢谢B大花时间解说 07/21 08:50