fml8 チュートリアル (バージョン 7.99.1-20180910)
Prev | Chapter 44. 入力データの検査 | Next

# CGI における入力データの制限

CGI では FML::Restriction::CGI クラスのモジュールを用いて 入力データがある正規表現の中に収まるかどうか？の検査をします。

入力値は、前述のクラスの入力制限をうけるべきです。 そのため、直接 param() を使ってはいけません。 必ず safe_param_xxx() メソッドを通じて、 param() ( CGI モジュール )からのデータ入力をして下さい。

なお、入力されたキーワード一覧を調べるために、

    for my $dirty_buf (param()) {
       ... check ...
    }

のような構文を許す必要があるでしょうが、

    param($dirtty_buf)

などとはしてはいけません。必ず

    for my $key (param()) {
       ... check ...

       if (key eq $key) {
           value = safe_param_key()
       }
    }

のように書いて下さい。

Prev | Home | Next
FML::Restriction クラス | Up | 議論: FML::Restriction の制限はきびし過ぎるか？

fml 8.0 (fml-devel) project homepage is www.fml.org/software/fml8/.
fml 4.0 project homepage is www.fml.org/software/fml4/.
about one floppy bsd routers, see www.bsdrouter.org/.
other free softwares are found at www.fml.org/software/.

author's homepage is www.fml.org/home/fukachan/.
Also, visit nuinui's world :) at www.nuinui.net.

For questions about FML, e-mail <fml-bugs@fml.org>.