在对搜索结果页做伪静态时显示乱码。我是用$q = empty($_GET['q'])?'0':$_GET['q'];来查询结果,用keyword = iconv("GBK","UTF-8",$q);来传递的,然后在页面中会用<?php echo $string = str_replace(' ','',$q); ?>来调用查询的关键词。目前页面调用关键词没乱码,打开用通用编码的伪静态网址如:%D1%A9%B7%C4%C9%C0-16-0.html时显示正常,但如果直接打开网址:雪纺衫-16-0.html时,查询的关键词变成乱码,无法查询结果,所有关键词调用也变成乱码。后来我试着加了一行代码测试:$keyword=iconv('UTF-8', 'gb2312//IGNORE',$q); 然后改为<?php echo $string = str_replace(' ','',$keyword); ?>,这时直接打开“雪纺衫-16-0.html”显示正常,也能查询到结果,但直接在搜索框中查询关键词时又出现<?php echo $string = str_replace(' ','',$q); ?>不能查询关键词也不能调用了,并且在直接打开网址“%D1%A9%B7%C4%C9%C0-16-0.html”也不能查询关键词了。试了很多种办法,还是不行。请哪位高手指教下,先谢过了!