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

    php access以汉语言作为参数进行数据查询时出现乱码

    2016-06-13 12:29:53原创347
    php access以中文作为参数进行数据查询时出现乱码。
    先上代码:
    
    
    include_once("Conn.php");

    $testJSON=array();
    $str = trim($_GET['dept']);

    $mysql =" select *,0 as ord from checkpro where ifstop=0 and dept like '*".$str."*' ";

    echo $mysql;

    $rs = $conn->Execute($mysql);
    while(!$rs->EOF)
    {

    $mydept =iconv('gb2312','utf-8',$rs->Fields['dept']->Value);
    $mypro =iconv('gb2312','utf-8',$rs->Fields['pro']->Value);
    $mynote =iconv('gb2312','utf-8',$rs->Fields['note']->Value);
    $mykf =iconv('gb2312','utf-8',$rs->Fields['kf']->Value);

    echo $mydept;

    $testJSON[] = array('dept'=>"".$mydept."","pro"=>"".$mypro."","note"=>"".$mynote."","kf"=>"".$mykf."");
    $rs->MoveNext();
    }

    foreach ( $testJSON as $key => $value ) {

    foreach ( $testJSON[$key] as $key_k => $value_k ) {
    $testJSON[$key][$key_k] = urlencode ($value_k);
    }
    }
    echo urldecode ( json_encode ( $testJSON ) );

    /*释放资源*/
    $rs->Close();
    $conn->Close();
    $rs = null;
    $conn = null;

    ?>


    如果我在地址栏输入:
    http://192.168.0.30:81/fkfs/jsons_a/json_deptchpro.php?dept=办公室
    那么就会出现如图的错误,如果参数是英文的就不会。


    如果我在地址栏输入:
    http://192.168.0.30:81/fkfs/jsons_a/json_deptchpro.php?dept=通用
    这时不会出现错误,这个参数得到的结果应该是正确的,但是却不显示任何记录。
    问大家,这个该怎么解决,谢谢!$str = iconv('utf-8', 'gbk', trim($_GET['dept']));
    $mysql =" select *,0 as ord from checkpro where ifstop=0 and dept like '*".$str."*' ";
    $rs = $conn->Execute($mysql);另外
    $mysql =" select *,0 as ord from checkpro where ifstop=0 and dept like '*".$str."*' ";
    为什么是 *
    应该
    $mysql =" select *,0 as ord from checkpro where ifstop=0 and dept like '%".$str."%' ";
    才对 错误信息显示:出错行是 21 行
    请指出 21 行在哪里!
    你贴出的代码中,21 行是 echo $mydept;,显然不是的

    你对输出的数据做了编码转换(iconv('gb2312','utf-8',$rs->Fields['dept']->Value))
    显然页面是 utf-8 的
    那么 $_GET['dept'] 也就是 utf-8 的了
    据此,你不可能查找到中文相关的结果
    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:nbsp dept gt Value testJSON
    上一篇: php 装配mongo扩展 下一篇: php过滤掉无法识别的疑问号字符
    Web大前端开发直播班

    相关文章推荐

    • PHP常用六大设计模式(总结分享)• Composer PHP依赖管理的新时代• 求一段php取值代码• 【php】PHP.ini配置文件中文• php-工厂模式

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网