2

を使用してフォームから収集しているフォームフィールドがあります

 var dataString = $("form").serialize();

次に、これを dataType "html" としてコントローラーに送信します

私のdataStringのvar_dumpは次のようになります(これまでのところ、メールアドレス、選択オプションなどが含まれます)

array(3) {
  ["username"]=>
  string(5) "mikey"
  ["firstname"]=>
  string(4) "tes%"
  ["lastname"]=>
  string(6) "tester" }

私の質問は次のとおりです。モデルにデータを送信する前に使用する必要があるフォーム衛生の適切な方法は何ですか? 特殊文字などを削除する必要があることはわかっていますが、使用すべきパッケージ化されたクラスはありますか?

データを次のように分割する必要がありますか

  $username =  trim(Array[0]) ; 
4

2 に答える 2

1

XSS フィルタリングを有効にするapplication/config/config.php

$config['global_xss_filtering'] = TRUE;
于 2013-04-21T03:00:59.847 に答える
1

ほとんどの場合、 CodeIgniter のxss_clean機能で十分です。

$config['global_xss_filtering'] = TRUE;編集:ファイルに設定することで、この関数を自動的に呼び出すことができることを指摘してくれた@Starxの回答に感謝しconfig.phpます。

Form Validation クラスもチェックしてください。例を次に示します: http://ellislab.com/codeigniter/user-guide/libraries/form_validation.html#preppingdata

また、AJAX経由でフォームデータを送信しているので、Javascriptで入力サニタイズを行うことはバイパスすることができるのでかなり役に立たないことに言及したかったので、サーバー側でそれを行うことを計画していたようですとにかく、間違いなく進むべき道です。

于 2013-04-21T02:59:33.400 に答える