1

LIKE パターン マッチングでクエリに渡されるテキストをエスケープする正しい方法は何ですか? 問題はそれです

select()->where('field LIKE ?', $input . '%');

と不正確になります

$input = '%sometext';

更新: 「脆弱性」 -> 「不正確」

4

1 に答える 1

0

脆弱性ではないですよね?妥当な内容です。アプリケーションに脆弱性をもたらす場合 ( などWHERE user LIKE '%admin%')、次のように sth を使用して自分で入力を検証/フィルタリングすることを検討する必要があります。

if (strpos('%', $input)){
     $input = strtr($input, '%', '');
}
于 2011-06-03T23:00:07.283 に答える