当前位置:asp编程网>技术教程>Asp教程>  正文

解决asp utf8页面地址栏汉字不能获取问题

2009-10-24 09:24:34   来源:asp编程网    作者:佚名   浏览量:2114   收藏

一直开发的网址都是gb2312格式的,很少遇到问题,最近在搞一个多语言版本的网站,我改用utf8格式,改后遇到许多问题。需要有许多注意的地方:
解决办法:使用server.URLEncode对汉字进行编码,如:a=server.URLEncode("a")
到下一个页面上,使用request("a")直接就可以得到汉字。
如果得不出,使用下面的解码函数,来得到汉字:
Function URLDecode(enStr)
  dim deStr,strSpecial
  dim c,i,v
    deStr=""
    strSpecial="!""#$%&'()*+,.-_/:;<=>?@[\]^`{|}~%"
    for i=1 to len(enStr)
      c=Mid(enStr,i,1)
      if c="%" then
        v=eval("&h"+Mid(enStr,i+1,2))
        if inStr(strSpecial,chr(v))>0 then
          deStr=deStr&chr(v)
          i=i+2
        else
          v=eval("&h"+ Mid(enStr,i+1,2) + Mid(enStr,i+4,2))
          deStr=deStr & chr(v)
          i=i+5
        end if
      else
        if c="+" then
          deStr=deStr&" "
        else
          deStr=deStr&c
        end if
      end if
    next
    URLDecode=deStr
End function
这样解决了地址栏汉字问题。



关于我们-广告合作-联系我们-积分规则-网站地图

Copyright(C)2013-2017版权所属asp编程网