2

データベーステーブルには、という列がありますoptions。整数型で、ユーザー入力からのビット単位の値の合計を保持することになっています。ユーザーがサーバーなどのビット単位の値の配列を送信する[1, 2, 4, 8]と、値が合計されてその列に保存されます。値を出力する必要がある場合 — のようにチェックするだけです$options & 2。それはすべて正常に動作しますが、私はただ疑問に思っています.ビットごとの値の合計をデータベースに保存する前に、何らかの方法でユーザー入力をチェックする必要がありますか?

アドバイスをありがとう!

4

2 に答える 2

0

短くて簡単:常にユーザー入力をチェックする必要
があります。いつも。

あなたの場合、それらを合計したり、それらを使用して他のことをしたりする前に、さまざまな値を確認する必要があります。すべてが問題ない場合 (2 のべき乗の数値のみ)、それらを合計して結果を処理します (データベースに保存するなど)。

于 2012-04-04T12:14:25.587 に答える
0

チェックされていないユーザー入力のビット単位の値でおそらく直面する問題は、送信後にチェックされなかったあらゆるタイプのデータで直面する問題と同じです。

はい、常にユーザー入力データを確認して検証する必要があります。

于 2012-04-04T12:17:46.193 に答える