本帖最后由 baidu_26094577 于 2015-03-08 23:58:40 编辑

解决方案 »

  1. 表单所在html的header中content-type声明的编码,就是提交到php的参数编码
    发现乱码直接iconv转就行了
      

  2. header('content-type:text/html;charset=utf8');GBK的可以轉一次UTF8
    $str = iconv('GBK','UTF-8', $str);
      

  3. 就是二楼说的,用户提交的数据编码是根据网页界面编码走的。
    一般网页html代码里<header>中都会有这么一句:<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    这样网页编码就是utf-8,用户在这个网页上输入提交的数据就是utf-8。
    现在一般都是用utf-8编码。能不用gbk就不用。
      

  4. 只是一种习惯,国内的大部分都是utf-8,台湾香港那边的多一点gbk
      

  5. 客户提交的东西,什么也保证不了。http header, html head可以限制一般用户提交指定编码的文本ps: 台湾用的是big5
      

类似问题 »