Netbeansを使用して、$ _ POSTまたは$ _GETの変数にアクセスしようとするときはいつでも、「安全」のためにfilter_input(INPUT_POST,'id')
のようなものを使用することをお勧めします(filter_inputを使用するよりも安全だとは思わないデフォルトのNONフィルターを使用しますが、とにかく。
これにより、この投稿への答えについて考えました: 投稿内のすべての変数を取得する方法(PHP)
そこにあります:
foreach ($_POST as $key => $value) {
//do something
echo $key . ' has the value of ' . $value;
}
filter_input()は$ _POST内の個々の変数に対してのみ機能します
私の質問は、「$_POST as $key
"NetBeansが教えてくれるこの想定されるアクセス標準に合うようにフィルタリングします。
全体をフィルタリングできます$_POST
filter_input_array を使用
$safePost = filter_input_array(INPUT_POST);
2番目のパラメーターを使用してフィルターを変更できます
$safePost = filter_input_array(INPUT_POST, FILTER_SANITIZE_STRING);
プロパティごとのフィルターを定義することもできます
$safePost = filter_input_array(INPUT_POST, [
"id" => FILTER_VALIDATE_INT,
"name" => FILTER_SANITIZE_STRING,
"email" => FILTER_SANITIZE_EMAIL
]);
入力について何も知らない場合はどうなりますか?
ええと、あなたはいつも何かを知っています。そして、ユーザーが無効な入力を提供した場合、それに反応する必要があります。
フィールドid
に整数が期待され、ユーザーがtomato
を送信した場合、ユーザーが送信したリクエストの何が問題かをエラーで返信する必要があります。