像ñáéíóú这样的特殊字符被导入为???在MySQL中

时间:2014-10-06 16:47:45

标签: php mysql utf-8 insert special-characters

我一直试图通过PHP INSERT命令将带有特殊字符的单词导入MySQL,我要么得到???对于每个特殊角色或它被切断后的所有内容。

我在互联网上看了很多,买不到任何解决方案似乎都有效。

目前来自脚本的Coruña,在SQL中插入Coru???a,代码如下:

$con=mysqli_connect("localhost","user",'pass','database');
$con->query("SET NAMES 'utf8' ");
$con->query("SET CHARACTER SET 'utf8'");

 if (mysqli_connect_errno()) {
   echo "Failed to connect to MySQL: " . mysqli_connect_error();
 }

mysqli_query($con,"INSERT INTO tbl_state (id, statecode, statename,country) 
  VALUES (1, 'A Coruña', 'A Coruña', 'ES')");

mysqli_close($con);

我的网页编码为content="text/html; charset=utf-8"

我在MySQL中对表和列都进行了utf8_general_ciutf8_spanish_ci整理,但没有成功。

任何遇到过这个问题的专家都会出现什么问题?

谢谢!

1 个答案:

答案 0 :(得分:0)

好的,我没有尝试通过PHP脚本输入数据,而是直接从phpMyAdmin插入了INSERT查询。

为了在PHP中输出正确的数据(没有方块或问号),我在建立连接时添加了这个:

$mysqli->query("SET NAMES 'utf8'");

一切都很棒!

感谢您的帮助,如果有人仍然可以通过PHP脚本找到如何解决问题的答案,那将会很有趣。