2011-05-09 73 views
0

我有多个语言字符被插入到MySQL MyISAM表的varchar列中。某些字符无法插入到数据库中

一个特别的角色,我敢肯定还有其他的失败中插入:

这是什么字,我怎么可以把这个角色,而不会影响整个单词。可以用来操纵这些单词的服务器端代码是php。是实际的话,包括这个符号

例子如下:

portugus

espaa

什么是正确插入这些词的最好方法是什么?

+0

这只是替代字符。字符编码不匹配发生在某个点。你究竟在哪里看到这个角色?获取提交的数据后,但在使用PHP插入数据库之前?或者在使用数据库管理工具插入数据库之后?或者在使用PHP检索数据库之后,但在发送到浏览器之前?或者使用webbrowser在HTML中显示数据之后? – BalusC 2011-05-09 20:48:06

+0

在插入数据库之前。我需要查看代码库,看看被插入的数据是否已被操纵。 – HGPB 2011-05-09 20:52:34

+0

你如何查看/显示它?通过回显给浏览器?如果是这样,你是否通过header('Content-Type:text/html; charset = utf-8')'设置了正确的响应编码? – BalusC 2011-05-09 20:54:19

回答

1

获得专业问题的权利可以是一个使命。看看我几周前撰写的这篇博客文章,该文章应该涵盖这一点。如果你仍然有问题,请回到这里。

How to Avoid Character Encoding Problems in PHP

+0

谢谢,我来看看。 – HGPB 2011-05-09 20:53:23

+0

您在最后提到的“PHP字符串函数不是unicode意识到的”是我的问题。感谢您的链接。 – HGPB 2011-05-11 12:35:22

+0

更多信息:http://www.phpwact.org/php/i18n/utf-8 – HGPB 2011-05-11 12:36:25