如何解决使用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\'\")
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。