私は自分のすべてのコードを見直していますが、検証する前にユーザー入力の妥当性を検証する必要性についてもう一度考えています。たとえば、クレジットカードの確認CVV:確認の前に確認が必要ですか?
// validation required?
if(!preg_match('/^[\d]{3,4}$/', $_POST['card_CVV']))
{
unset($_POST['card_CVV']);
$error++;
// verification
}
elseif($card_CVV != $_POST['card_CVV'])
{
$error++;
}
// pass verification
else
{
// process transaction
}
検証なしで検証を実行する必要がありますか?
私はここでも注射が可能だと思います。いつでも、ユーザー入力の検証とフィルタリングは、とにかくelseifでフィルタリングされていない '$ _POST'変数を使用すべきでないことを意味します。 – Anonymous
検証と検証の違いを完全に理解しているかどうかはわかりません。それらは事実上同じように見えますが、入力が予想通りの形になっているかどうかをチェックしています。通常、入力を処理する前に、エラーメッセージをユーザーに返すのはかなり単純な方法です。 – cdeszaq
@ Dan Surfrider、私はユーザーデータを保存していない、それでもリスクを投稿するだろうか? –