登録検証によりユーザー名にスペースが入力されなくなり、ASP がバッチ関数コード check.asp 内の特殊文字を置き換えます。
次のようにコードをコピーします。
<%
''''''''''''''''''''''''''''''
関数 ReplaceText(fString,patrn,replStr)
Set regEx = New RegExp ' 正規表現を作成します。
regEx.Pattern = patrn ' パターンを設定します。
regEx.IgnoreCase = True ' 大文字と小文字を区別するかどうかを設定します。
regEx.Global = True ' グローバルな可用性を設定します。
ReplaceText = regEx.Replace(&fString&,&replStr&) '置換します。
regEx=nothing を設定します
終了機能
''''''''''''''''''''''''''''''
''''''''''''''''''''''''''''''
関数 HTMLEncode(fString)
fString=トリム(fString)
fString=Replace(fString,CHR(9),)
fString=Replace(fString,CHR(13),)
fString=Replace(fString,CHR(22),)
fString=Replace(fString,CHR(38),&) '&
fString=Replace(fString,CHR(32), ) '
fString=Replace(fString,CHR(34),) '
fString=Replace(fString,CHR(37),%) '%
fString=Replace(fString,CHR(39),') ''
fString=Replace(fString,CHR(42),*) '*
fString=置換(fString,CHR(43),+) '+
fString=Replace(fString,CHR(44),,) ',
fString=Replace(fString,CHR(45)&CHR(45),--) '--
fString=Replace(fString,CHR(92),/) '/
'fString=置換(fString,CHR(95),_) '_
fString=Replace(fString,CHR(40),() '(
fString=Replace(fString,CHR(41),)) ')
fString=Replace(fString,CHR(60),<) '<
fString=Replace(fString,CHR(62),>) '>
fString=Replace(fString,CHR(123),{) '{
fString=Replace(fString,CHR(125),}) '}
fString=Replace(fString,CHR(59),;) ';
fString=Replace(fString,CHR(10),<br>)
fString=ReplaceText(fString,([&#])([a-z0-9]*);,$1$2;)
fString=ReplaceText(fString,(fuck|shit),string(len(&$1&),*))
if IsSqlDataBase=0 then 'カタカナ(日本語文字)をフィルタリング [/u30A0-/u30FF] by yuzi
fString=エスケープ(fString)
fString=ReplaceText(fString,%u30([AF][0-F]),0$1;)
fString=unescape(fString)
終了する場合
HTMLEncode=fString
終了機能
''''''''''''''''''''''''''''''
''''''''''''''''''''''''''''''
FunctionRequestInt(fString)
RequestInt=リクエスト(fString)
IsNumeric(RequestInt) の場合
RequestInt=int(RequestInt)
それ以外
RequestInt=0
終了する場合
終了機能
''''''''''''''''''''''''''''''
UserName=HTMLEncode(unescape(Request.QueryString(UserName)))
UserNameLength=RequestInt(UserNameLength)
If len(UserName)<>UserNameLength then
応答.write ユーザー名は不正です!
それ以外
response.write ユーザー名は正当です!
終了の場合
%>
HTMLEncode 関数は、ユーザー名を有効な文字に変換するために必要な手順です。
RequestInt 関数は主に、入力された有効な文字数に基づいて、ユーザー名にスペースが含まれているかどうかを判断します。
呼び出しメソッド: check.asp?UserName=ユーザー名&UserNameLength=ユーザー名の長さ
Ajax判定にはcheck.aspが一般的です。