يقرأ ASP رمز الوظيفة المشفر بواسطة Request.QueryString ويمكن للأصدقاء الذين يتعلمون asp الرجوع إليه. 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=65001%>
<%
الخيار صريح
Const YXCMS_CHARSET = UTF-8
كونست YXCMS_CODEPAGE = 65001
Response.CharSet = UTF-8
جلسة كود الصفحة = 65001
"اختبار عنوان URL."
'?n1=الدب القديم في الجبال العميقة&n2=%C9%EE%C9%BD%C0%CF%D0%DC&n3=%E6%B7%B1%E5%B1%B1%E8%80%81%E7%86 %8أ
"الدب القديم في الجبال."
'GBK: %C9%EE%C9%BD%C0%CF%D0%DC
'UTF-8: %E6%B7%B1%E5%B1%B1%E8%80%81%E7%86%8A
خافت URI، المفتاح
تعيين URI = Cls_URI الجديد
'"إخراج جميع اختبارات المعلمات."
لكل مفتاح في URI.QueryString
Response.Write <span style='color:red'> & key & : </span> & URI.Get(key) & <hr/>
التالي
"احصل على قيمة واحدة."
'URI.احصل على (الاسم)
'--------------------------------------------
'يتولى ترميز ASP UTF-8 ترميز GBK UTF-8
'المؤلف: ديب ماونتن أولد بير QQ:81090
'--------------------------------------------
فئة Cls_URI
خاص o_item، o_regx
url_query الخاص
فئة فرعية خاصة_تهيئة
تعيين 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}|[/ xf 0-/xf7][/x80-/xbf]{3}|[/xe0-/xef][/x80-/xbf]{2}|[/xc0-/xdf][/x80-/xbf])+ $
جلسة كود الصفحة = 936
url_query = Request.ServerVariables(QUERY_STRING)
جلسة كود الصفحة = 65001
'قم بإنشاء قيمة QueryString محاكاة استنادًا إلى سلسلة QUERY_STRING
خافت ط، أ، ب، ج، ن، الخامس
أ = تقسيم (url_query،&) : ج = UBound(a)
لأني = 0 إلى ج
ب = سبليت (أ(ط)،=،2)
ن = تقليم (ب (0) & )
إذا كان UBound(b) < 1 إذن
الخامس =
آخر
ت = ب(1)
إذا كان InStr(v,%)> 0 ثم v = URLDecode(v)
نهاية إذا
إذا ن <> ثم
o_item(n) = v
نهاية إذا
التالي
اضبط o_regx = لا شيء
نهاية الفرعية
فئة فرعية خاصة_إنهاء
تعيين o_item = لا شيء
نهاية الفرعية
"محاكاة الطلب.QueryString."
سلسلة استعلام الوظيفة العامة ()
قم بتعيين QueryString = o_item
وظيفة النهاية
'"محاكاة Request.QueryString(n)"
الوظيفة العامة [GET](ن)
إذا o_item.Exists(n) ثم
[الحصول على] = o_item.Item(n)
آخر
[الحصول على] =
نهاية إذا
وظيفة النهاية
"تنسيق الترميز
URLDecode للوظيفة الخاصة (ByVal s)
خافت sm،cs،r،o_regex
إذا كان Trim(s &) = إذن
URLDecode = s: وظيفة الخروج
نهاية إذا
الصورة = unescape(s)
إذا o_regx.Test(s) ثم
cs=UTF-8
آخر
cs=GBK
نهاية إذا
تعيين sm = CreateObject(Adodb.Stream)
مع سم
.النوع = 2
الوضع = 3
.يفتح
.CharSet = ISO-8859-1
.كتابة النص ق
.الموضع = 0
.CharSet = CS
URLDecode = .ReadText(-1)
.يغلق
نهاية مع
تعيين sm = لا شيء
وظيفة النهاية
نهاية الفصل
%>