MySQL& PHP特殊字符问题

时间:2014-02-27 15:51:06

标签: php mysql

我正在使用MySQL 5.5版本

当我尝试在数据库中插入'特殊字符时,它会自动转换为。。

我将数据库字符集更改为utf8& character_set_connection to utf8但我无法得到预期的结果。

如何解决这个问题?

请帮忙解决这个问题

2 个答案:

答案 0 :(得分:0)

您需要检查发送数据的方式。 如果数据库中的字符集是utf-8,则需要将其发送到。

尝试对数据进行编码,如下所示:

$sql = "INSERT INTO tablex(field) VALUES('".utf8_encode($mydata)."')";

答案 1 :(得分:-2)

确保连接的每个部分都使用utf8非常重要,否则will会遇到问题。

下面我们将创建一个与数据库的utf8连接,执行非常重要的set names,然后使用utf8_encode方法进行编写。

mysql_connect("host", "user", "pass");
mysql_query("SET character_set_results=utf8");
mysql_set_charset('utf8');
mb_internal_encoding('UTF-8');
mysql_select_db("my_db");
mysql_query("set names 'utf8'");

$sql = "INSERT INTO `table`(`foo`) VALUES('".utf8_encode($bar)."')";