我一直试图通过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_ci
和utf8_spanish_ci
整理,但没有成功。
任何遇到过这个问题的专家都会出现什么问题?
谢谢!
答案 0 :(得分:0)
好的,我没有尝试通过PHP脚本输入数据,而是直接从phpMyAdmin插入了INSERT查询。
为了在PHP中输出正确的数据(没有方块或问号),我在建立连接时添加了这个:
$mysqli->query("SET NAMES 'utf8'");
一切都很棒!
感谢您的帮助,如果有人仍然可以通过PHP脚本找到如何解决问题的答案,那将会很有趣。