0

我想要的只是SELECT一个utf8_bin存储在 2 行表中的字符串

1id和 2continut第一个是 an int(20) NOT NULL AUTO INCREMENT,第二个VARCHAR(2000) utf8_bin NOT NULL用于罗马尼亚语插入。

当我从 phpmyadmin 访问数据时,数据存储正确,但echo它返回奇怪的字符而不是罗马尼亚变音符号。

$sqlis = "SELECT continut FROM cantari WHERE id = {$id}";
$dbh->query($sqlis);
foreach ($dbh->query($sqlis) as $liniie);

$continut = $liniie['continut'];

这是结果:Cau?i r�uri ?i izvoare

$continut是我来自 sql 的数据。我已在文件头的内容中将元数据设置为 utf8 <meta charset="utf-8">

htaccess 可以帮助我或 css 吗?或者如何用正常的罗马尼亚变音符号替换这些元素?

4

2 回答 2

0

你有没有在Mysql连接上将字符集设置为UTF-8?

例如:

$dbh->set_charset("utf8")

没有它,从 MySQL 返回的数据将被转换为 Cp1252。任何不适合 Cp1252 的字符都将设置为“?”。

于 2013-10-21T09:56:11.247 回答
0
 $sqlis = "SELECT continut FROM cantari WHERE id = {$id}; SET NAMES 'utf8' ";

所以我们只需要在 SQL 服务器端指定我们将使用 utf8 字符。

于 2013-10-25T20:46:00.780 回答