1. ホーム
  2. Web プログラミング
  3. ASP プログラミング
  4. ASPの基本

ASPでのServer.HTMLEncodeの使用方法(カスタム関数あり)

2022-01-18 03:43:48

Server.HTMLEncodeの定義と使用方法

HTMLEncode メソッドは、指定された文字列に対して HTML エンコードを適用します。これは主にセキュリティ上の理由によるものです。

構文

サーバー.HTMLEncode(文字列)

<テーブル パラメータ 説明 文字列 必須項目です。エンコードする文字列。

インスタンス
スクリプトです。

<%
response.write(Server.HTMLEncode("The image tag: <img>"))
%>

出力します。

画像タグ: &lt;img&gt;

ブラウザの出力です。

<ブロッククオート

画像タグ: <img>

aspのバックエンドでは、ユーザーの入力をserver.htmlでエンコードすることが多いのですが、例えば次のようになります。

username=server.htmlencode(リクエスト("ユーザー名"))

続いてインバウンドの操作。また、セキュリティ上の理由から、ユーザー入力は最も信頼性の低いものです。

以下は、htmlencodeのカスタム関数です。

HTMLEncode()関数は、HTML記号だけでなく、キャリッジリターンやラインフィードもエンコードし、テキストボックスに入力された内容を元の表示形式で出力できるようにするカスタム関数です。

function HTMLEncode(fString)
    fString = replace(fString, "&", "&amp;")
    fString = replace(fString, """", "&quot;")
    fString = replace(fString, "'", "&#39;")
    fString = replace(fString, ">", "&gt;")
    fString = replace(fString, "< ", "&lt;")
    fString = replace(fString, " ", "&nbsp;")
    fString = replace(fString, CHR(13), "")
    fString = replace(fString, CHR(10) & CHR(10), "<p>")
    fString = replace(fString, CHR(10), "<br />")
    HTMLEncode = fString
end function

ここに、置き換える必要のあるコードを追加することができます。

HTMLDecode関数です。HTMLEncode関数の逆で、html内の文字をそのままtextareaに表示するもので、情報を修正するときに便利です。

function HTMLDecode(fString)
 fString = replace(fString,"&gt;",">")
 fString = replace(fString,"&lt;","<")
 fString = Replace(fString,"&nbsp;",chr(32))
 fString = Replace(fString,"&quot;",chr(34))
 fString = Replace(fString,"&#39;",chr(39))
 fString = Replace(fString,"",chr(13))
 fString = Replace(fString,"</P><P>",CHR(10)& CHR(10))
 fString = Replace(fString,"<BR>",CHR(10))
 HTMLDecode = fString

ASPでのHTMLEncodeの使い方(カスタム関数)はこちらで紹介しています。HTMLEncodeに関するその他の内容は、スクリプトハウスの過去の記事を検索するか、以下の関連記事を引き続き閲覧してください。