1

私はcodeigniterを使用していますが、現在、全身検索を行っていますが、これを行うためのベストプラクティスは何でしょうか。今のところ私はこれを持っています:

$keyword = $this->db->escape_like_str(trim($_POST['keyword']));

その後、検索を行います。これは安全ですか、それとももっと何かをする必要がありますか(XSSフィルタリングがオンになっています)?

4

1 に答える 1

5

_POST変数に直接アクセスしているため、CIのすべてのXSS/エスケープおよびセキュリティ機能をバイパスしています。あなたはそれを次のように取得する必要があります:

$this->input->post('keyword');

これはCIによって自動的にエスケープされ、DBにスローする前に他の検証を実行できます。また、アクティブレコードを使用する場合は、必要に応じてすべての値が自動的にエスケープされます。

于 2012-04-11T10:00:03.277 に答える