php文件的编码是utf-8,并且php生成的html的编码也是utf-8为什么向这个php文件传参时,如果是中文则是乱码?
传过去的参数的编码也是utf-8。但是在php页面内直接输出中文字符串是正常的,这是为什么呢??
我是php菜鸟,在jsp中可以设置可以设置HttpRequest和HttpResponse的编码,我在想php中是不是也有这么一个方法设置request请求的编码??调用header方法设置html的编码只是设置了Response的编码,而没有设置request的编码,所以导致中文参数乱码?是不是这样呢?
请高人指点谢谢

解决方案 »

  1.   

    编码 urlencode($userinput)
    解码已编码的 URL 字符串
    urldecode()
      

  2.   

    urldecode() 解决乱码 ,
      

  3.   

    数据库 字段 整理 那里选择 Gb2312_ci
      

  4.   

    现在已经可以从数据库正常取得中文,只要调用mysql_query("set names utf8");就可以了。。
    但问题是ajax传递中文参数是乱码!!!
      

  5.   


    urlencode是php中对字符串编码吧,我是想在JavaScript进行编码,怎么解决呢?
      

  6.   

    我将GB2312的发给出来:
    1.php中:设置两个变量:$charset=GB2312 $dbcharset=GB2313 <meta content="text/html; charset=GB2312" http-equiv="Content-Type">
    2.mysql_query("SET NAMES '".$this->dbcharset."'");
    3.建库的时候,MySQL 连接校对,也要选择GB2312简体,以及表都要选择GB2312
    这样应该没问题,你参考一
      

  7.   

    这里有个很好的解决方法 PHP+MySQL应用的乱码根绝方案
      

  8.   

    用iconv函数试一下
    url = http://xxx.xx.php?char=中文
    $name = iconv('utf-8','gbk',$_GET['char']);