好的,我有一个网络,我咨询数据库(phpMyAdmin)并显示一些结果(它基本上是一个搜索者)。当我显示此数据库中具有重音字符的结果时,问题就出现了。 网页中的页面编码为utf-8,网页的所有内容都接受重音字符,除非我通过php调用此数据库。我还在ut8-general-ci中对数据库,表和字段进行了整理。 我花了很多时间寻找解决方案而且从未出现过。 我在调用数据库中的信息时保留代码(在php中):
... some code
//We select the webs with the same keywords (coincidences).
//We order first the search in the same language. All ordered by Title.
$result = mysql_query("SELECT * FROM Webs WHERE Keywords LIKE '%$search%' ORDER BY CASE WHEN Language='English' THEN 0 ELSE 1 END, Title", $link);
if ($row = mysql_fetch_array($result))
{
//We start the list of results
echo "<ul>";
do
{
//One list element
echo "<li>";
echo "<a href=http://".$row["Url"].".html><b>".$row["Title"]."</b></a><br/>";
echo "<a href=http://".$row["Url"].".html>".$row["Url"]."</a><br/>";
echo "".$row["Description"]."<br/>";
echo "</li><br/>";
}
while ($row = mysql_fetch_array($result));
//We end the list of results
echo "</ul><br/>";
}
else
{
echo "<p>No register has been found !</p>";
}
?>
欢迎任何帮助。
答案 0 :(得分:2)
连接后尝试使用mysql_set_charset
$connect = mysql_connect('localhost', $user, $password);
mysql_set_charset('utf8', $connect);
PS
不推荐使用mysql_ *函数,不要使用它们。考虑切换到PDO或MySQLi。