2010-09-04 42 views
0

我已经做到了这一点:PHP:与OAA更新到MySQL

mysql_set_charset("utf8",$link);在在连接+上的每个表中的数据库

连接

mysql_query("SET NAMES 'UTF8'"); latin1和UTF8归类+性格改变对于每个表+列

文件有meta utf8 + header('Content-Type: text/html; charset=utf-8');加上文件本身格式化为utf-8(不包括bom)

其中链接是mysql_connect(),它显示ääå字符很好,当我从数据库中取出它们时,但是当我尝试使用mysql_query更新包含ÅÅ的东西时,它将存储为öÃ..我解决这个问题?

在数据库中的列等等都是,latin1_swedish_ci,为表示其插入OAAS没有问题,并呼应它也非常好,但不是当我尝试更新集$ USER =“'000”

回答

0

在数据库

每个表的mysql_query( “SET NAMES 'UTF8'”),你可以更具体一点吗?我无法在每张表上使用这个查询

它存储作为?¶Ã..

你怎么检查呢?

+0

对不起,我发现这个问题,并在其foreach,没有任何关于这个,我的错误,我认为foreach()不能做任何东西的奥雅字符..请检查这里http://stackoverflow.com/questions/3645668/PHP-的foreach不要理解,OAA – Karem 2010-09-05 10:17:54

0

在数据库中的列等等,latin1_swedish_ci

这是你的问题。您需要使用UTF-8字符集来存储UTF-8数据。

你在展示什么:Ã?¶Ã很可能是存储在latin1表中的UTF-8数据(可以由多个字节组成)。

+0

但是..如何插入ÅÄÅ工作正常,但没有更新? – Karem 2010-09-04 23:33:23

+0

@Karem你使用像phpMyAdmin这样的前端来插入数据吗? phpMyAdmin可以检测和处理字符集差异。 – 2010-09-04 23:37:42

+0

不知道前端是什么,但好吧,生病尝试将我的列更改为utf8 – Karem 2010-09-04 23:38:53