存储和检索特殊字符mysql

时间:2012-02-10 13:35:48

标签: java php mysql

  

可能重复:
  how to select mysql query with foreign language?

我无法将之类的字符存储在mysql表格中的文本旁边,但我将整理更改为utf8-bin我现在可以存储它们但是当我检索文本时显示?字符,有没有办法将这些字符与普通字符一起存储并检索它们?更改排序规则会影响搜索此文本的准确性吗?

3 个答案:

答案 0 :(得分:3)

您需要确保所有内容都在utf8中:

  • 数据库
  • 数据库连接(在建立连接后类似于PDO / PHP中的$db->exec('SET CHARACTER SET utf8');
  • 如果你使用php
  • 你的php文档
  • 您的html输出

答案 1 :(得分:0)

我遇到了同样的问题。您需要在从数据库检索数据之前发出这些查询。

mysql_query("set character_set_server='utf8'");
mysql_query("set names 'utf8'");

在将HTML回显到网页之前,将页面字符集设置为UTF-8。

header('Content-Type: text/html; charset=UTF-8');

答案 2 :(得分:-1)

尝试使用htmlentities()函数。它会将所有适用的字符编码为html实体。

http://php.net/manual/en/function.htmlentities.php