当前位置:Gxlcms > PHP教程 > ajax乱码问题(仿百度搜索页面),在线求解答,大侠们有空速度帮忙

ajax乱码问题(仿百度搜索页面),在线求解答,大侠们有空速度帮忙

时间:2021-07-01 10:21:17 帮助过:33人阅读

乱码 ajax

这种乱码如何解决!!!我代码都贴出来:
0) {$sql= "SELECT username FROM phpcms_member WHERE username LIKE '".$queryString."%'  LIMIT 0,15";echo $sql;$query = mysql_query($sql);while ($result = mysql_fetch_array($query)){	$value=$result['username'];	echo '
  • '.$value.'
  • ';}}?>


    htm:
    Ajax搜索功能



    回复讨论(解决方案)

    有人吗 求帮忙看看,O(∩_∩)O谢谢

    有人吗 求帮忙看看,O(∩_∩)O谢谢

    ajax对中文处理,你最好做一下转换,因为编码的问题造成的

    因为你有 header('Content-Type:text/html;charset=gbk');
    所以 ajax 会将返回的内容按 gbk 解释
    但是 ajax 总是以 utf-8 向外发送数据的
    因此你 $queryString = $_POST['queryString'];
    得到的是 utf-8 编码的数据,当你 echo $sql; 时,就将 utf-8 的内容当做 gbk 发出了,所以出现乱码
    为此你需要
    $queryString = iconv('utf-8', 'gbk', $_POST['queryString']);
    将 ajax 传来的数据转一下码

    因为你有 header('Content-Type:text/html;charset=gbk');
    所以 ajax 会将返回的内容按 gbk 解释
    但是 ajax 总是以 utf-8 向外发送数据的
    因此你 $queryString = $_POST['queryString'];
    得到的是 utf-8 编码的数据,当你 echo $sql; 时,就将 utf-8 的内容当做 gbk 发出了,所以出现乱码
    为此你需要
    $queryString = iconv('utf-8', 'gbk', $_POST['queryString']);
    将 ajax 传来的数据转一下码

    感谢 xuzuning 再一次解决我的问题!

    人气教程排行