将特殊字符(č,š和ž)插入mysql数据库

时间:2014-02-05 16:27:45

标签: php html mysql sql database

我正在试验插入后数据库中出现的特殊字符如č,š和ž。在数据库(varchar字段)中插入字符串“č_š_ž”如下所示:“Ä_Å¡_ž”。对我而言,字符串在数据库中的显示方式并不是问题,但是当我从数据库中取回它并使用此元数据(如果重要)将其呈现为HTML时,它似乎仍然看起来像“Ä_Å¡_ž”:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

我还尝试在插入之前实际转义字符串,但结果保持不变。有谁知道处理这个问题的好方法?非常感谢任何帮助!

3 个答案:

答案 0 :(得分:1)

使表格的编码为utf8_general_ci,这使得MySQL物理存储和检索UTF-8中编码的值。

请阅读:Database Character Set and Collation

答案 1 :(得分:0)

使用此:

$set_utf=$dbh->exec("SET NAMES UTF8");

答案 2 :(得分:-1)

确保您的字符与您使用的语言相关。当我使用印地语字符时,我在我的使用中使用了这个:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<meta http-equiv="Content-Language" content="hi" />

并且在连接到您的数据库之后添加以下代码行:

mysql_query("SET NAMES UTF8");