php access以中文作为参数进行数据查询时出现乱码。
先上代码:
如果我在地址栏输入:
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=通用
这时不会出现错误,这个参数得到的结果应该是正确的,但是却不显示任何记录。
问大家,这个该怎么解决,谢谢!
<?php
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=通用
这时不会出现错误,这个参数得到的结果应该是正确的,但是却不显示任何记录。
问大家,这个该怎么解决,谢谢!
...全文
相关推荐
解决PHP+mysql处理中文乱码的独家方案
解决PHP+mysql处理中文乱码的独家方案
php MsSql server时遇到的中文编码问题
朋友要用sugarcrm的php读取Ms sql server的中文资料,因为其原始资料是Access 数据库,导到mysql不太方便。
php MsSql server时遇到的中文编码问题.doc
php MsSql server时遇到的中文编码问题.doc
PHP读取ACCESS数据到MYSQL的代码
复制代码 代码如下: <?php header(‘ontent-Type:text/html;charset=GB2312’);//避免输出乱码 $dbhost =”localhost”; $dbuser =”root”; $dbpassword = “123456”; $dbname = “139miaosha”; mysql_connect($dbhost,$dbuser,$dbpassword) or die(“error!”); mysql_query(“set names ‘gbk'”); mysql_select_db(‘139miaosha’); $conn = new com(
PHP使用PDO操作数据库的乱码问题解决方法
主要介绍了PHP使用PDO操作数据库的乱码问题解决方法,实例分析了编码设置及属性设置解决乱码问题的实现技巧,需要的朋友可以参考下


基础编程
