• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    ASP读取Request.QueryString编码的函数代码
    1. 支持参数纯汉字 ?a=深山老熊
    2. 支持参数gb2312 Urlencode编码: ?a=%C9%EE%C9%BD%C0%CF%D0%DC
    3. 支持参数UTF-8 Urlencode编码: ?a=%E6%B7%B1%E5%B1%B1%E8%80%81%E7%86%8A
    复制代码 代码如下:

    %@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
    %
    Option Explicit
    Const YXCMS_CHARSET = "UTF-8"
    Const YXCMS_CODEPAGE = 65001
    Response.CharSet = "UTF-8"
    Session.CodePage = 65001
    '测试URL
    '?n1=深山老熊n2=%C9%EE%C9%BD%C0%CF%D0%DCn3=%E6%B7%B1%E5%B1%B1%E8%80%81%E7%86%8A
    '深山老熊
    'GBK : %C9%EE%C9%BD%C0%CF%D0%DC
    'UTF-8 : %E6%B7%B1%E5%B1%B1%E8%80%81%E7%86%8A
    Dim URI,key
    Set URI = new Cls_URI
    '输出所有参数测试
    For Each key In URI.QueryString
    Response.Write "span style='color:red'>" key " : /span>" URI.Get(key) "hr/>"
    Next
    '取单个值
    'URI.Get("名称")
    '--------------------------------------------
    'ASP UTF-8编码下通吃 GBK UTF-8编码
    '作者: 深山老熊 QQ:81090
    '--------------------------------------------
    Class Cls_URI
    Private o_item,o_regx
    Private url_query
    Private Sub Class_Initialize
    Set o_item = CreateObject("Scripting.Dictionary")
    o_item.CompareMode = 1
    Set o_regx = New Regexp
    o_regx.Pattern = "^(?:[\x00-\x7f]|[\xfc-\xff][\x80-\xbf]{5}|[\xf8-\xfb][\x80-\xbf]{4}|[\xf0-\xf7][\x80-\xbf]{3}|[\xe0-\xef][\x80-\xbf]{2}|[\xc0-\xdf][\x80-\xbf])+$"
    Session.CodePage = 936
    url_query = Request.ServerVariables("QUERY_STRING")
    Session.CodePage = 65001
    '根据QUERY_STRING字符串,生成模拟QueryString值
    Dim i,a,b,c,n,v
    a = Split(url_query,"") : c = UBound(a)
    For i = 0 To c
    b = Split(a(i),"=",2)
    n = Trim(b(0) "")
    If UBound(b) 1 Then
    v = ""
    Else
    v = b(1)
    If InStr(v,"%") > 0 Then v = URLDecode(v)
    End If
    If n > "" Then
    o_item(n) = v
    End If
    Next
    Set o_regx = Nothing
    End Sub
    Private Sub Class_Terminate
    Set o_item = Nothing
    End Sub
    '模拟 Request.QueryString
    Public Function QueryString()
    Set QueryString = o_item
    End Function
    '模拟 Request.QueryString(n)
    Public Function [GET](n)
    If o_item.Exists(n) Then
    [GET] = o_item.Item(n)
    Else
    [GET] = ""
    End If
    End Function
    '编码格式化
    Private Function URLDecode(ByVal s)
    Dim sm,cs,r,o_regex
    If Trim(s "") = "" Then
    URLDecode = s : Exit Function
    End If
    s = unescape(s)
    If o_regx.Test(s) Then
    cs = "UTF-8"
    Else
    cs = "GBK"
    End If
    Set sm = CreateObject("Adodb.Stream")
    With sm
    .Type = 2
    .Mode = 3
    .Open
    .CharSet = "ISO-8859-1"
    .WriteText s
    .Position = 0
    .CharSet = cs
    URLDecode = .ReadText(-1)
    .Close
    End With
    Set sm = Nothing
    End Function
    End Class
    %>
    您可能感兴趣的文章:
    • asp下request.querystring("id")与request("id")区别
    • asp.net下Request.QueryString取不到值的解决方法
    • 循环取值Request.QueryString的用法
    • 从客户端检测到有潜在危险的Request.Form值的asp.net代码
    • asp.net 从客户端中检测到有潜在危险的 Request.Form 值错误解
    • ASP.NET中Request.Form中文乱码的解决方法
    • asp.net中Request.QueryString与Request.Param的区别分析
    • Request.QueryString与一般NameValueCollection的区别
    • 有潜在危险的 Request.Form 值避免方法
    • ASP.NET从客户端中检测到有潜在危险的request.form值的3种解决方法
    • ASP.NET检测到不安全 Request.Form 值解决方案汇总
    • Jquery中request和request.form和request.querystring的区别
    上一篇:asp读取excel表名的实现代码
    下一篇:判断dll文件是否已经注册的ASP函数代码
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    ASP读取Request.QueryString编码的函数代码 ASP,读取,Request.QueryString,