使用UTF-8的外键约束

问题描述

| 我最近将我的数据库转换为UTF-8,应该首先将其转换为UTF-8。一切看起来都很好,除非我使用该功能
echo mb_detect_encoding($_POST[\'province\']);
对于不包含特殊字符的所有内容,我都将获得ASCII,对于所有包含特殊字符的内容,我都将获得UTF-8。但是,这些值都是从数据库本身提取的,因此这令我感到困惑。这是应该如何工作的吗? 另一个不起作用的是我的外键约束;我无法从下拉列表中输入值,因此再次从数据库中拉出值。 当我使用
echo mb_detect_encoding($_POST[\'province\']);
echo $_POST[\'province\'];
我懂了
UTF-8
Galápagos
由于省表上的外键限制,我无法在报表表下输入数据库。但是,该值直接来自省表。我在这里迷失了方向。 但是,我得到
ASCII
Carchi
对于厄瓜多尔的另一个省,此值将直接输入数据库。我在这里做错了什么?     

解决方法

这可能是需要正确设置客户端编码的情况。在初始mysql连接后尝试以下操作:
mysql_query(\"SET NAMES \'utf8\'\")
    

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...