• 技术文章 >后端开发 >php教程

    各位大大一起来帮忙看一下!解决办法

    2016-06-13 13:40:36原创370

    各位大大一起来帮忙看一下!
    小弟我遇到个这种问题:我的前台有一个查询框(用Php写的,编码格式是GBK),后台数据库的编码格式为UTF-8,现在输入框中输入了汉字,但是到后台中显示的是乱码,这样就无法查询到数据显示在前台了。现在找到的一个方法就是在我的javascript中用encodeURI函数将输入的汉字进行转换,变成十六进制的序列,然后想找一个php的方法将这段序列又转换回去变成汉字。请问怎么做!

    ------解决方案--------------------
    1、用 js 做 url 编码转换时应用 encodeURIComponent 而不是 encodeURI
    只有这样才能将 gbk 转成 utf-8 的 url 串
    服务器端只需 urldecode 就可得到 utf-8 的数据

    2、假定你使用的是 mysql 数据库
    那么并不需要如此复杂,只需在选择数据库后执行 SQL 指令
    set names gbk
    即可,编码转换的工作将由 mysql 完成
    ------解决方案--------------------
    在php端用mb_convert_encoding()将编码冲gbk转换为utf-8呢

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:encodeURI UTF GBK Php mysql
    上一篇: php账号输入进入页面之后保持登陆状态的如何实现啊很急 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • 一文详解PHP用流方式实现下载文件(附代码示例)• PHP反序列化入门总结(小白必看)• 聊聊PHP escapeshellarg函数使用的中文问题• PHP原生类的总结分享• 分享PHP函数使用小工具(附代码示例)
    1/1

    PHP中文网