ctype_digit(base64_decode(trim($_POST['id'])
の場合、最初に変数を作成し、trim($_POST['id']
)を代入する必要があります。なぜなら、オーバーフローする可能性がある狂ったことがあるかもしれないからです。base64_decode
またはctype_digit
例か、私はあまり強調しませんか?PHPでフォームを安全に処理するには?
答えて
私はあなたがそれを行うことで十分注意していると言います。しかし、ほとんどの場合、正しい方法は$ idのような変数を作成し、それにあなたのpost変数の値を代入することです。これは、開発者がテンプレートを使用して作業する必要があり、PHPプログラマとして、入力とデータベースの行をポスト/取得し、変数や配列へのアクセスが容易なテンプレートとして利用できるようにすることです。
この例では、数値IDが必要な場合にスクリプトを安全にします。通常、SQL文で使用される文字列が必要な場合は、さらに手順を実行する必要があります。最もきれいな文字列であっても、SQLインジェクションに使用できます。これは、準備されたステートメントを使用すべき場所です。
は私は本当にあなたの質問を得ることはありません私は恐れています。 3つの関数を適用する前に変数に$ _POST ['id']を代入するだけで差はありません。 しかし、$ _POST ['id']が実際に設定されている(または通知を受け取る)ことを最初に検証する必要があります。また、$ _POST ['id']の値が実際に有効であることを常に検証する必要があります(悪意のある値が含まれていると攻撃を誘導することはできません)。
フォームからデータを検証する標準的な方法はありますか? – JohnA
巨大なデータ入力を恐れている場合は、デコードする前にstrlenを追加するだけで、オーバーフローする心配はありません。また、データベースの近くで使用する前に、常にデータをチェックする必要があります。
あなたのDBを保護するだけではありません。 DBを害することはできませんが、XSSも可能です。 – matthiasmullie
XSSトラフファイアバグはできますか? – JohnA
- 1. PHPでクライアントのセッションを安全に処理する
- 2. NSUserDefaultsは自動終了を安全に処理しますか?
- 3. リモートの「ホットリンク」画像を安全に処理する
- 4. PHPフォームの処理
- 5. PHPフォームによるクレジットカード処理
- 6. ブートストラップによるPHPフォームの処理
- 7. このように方程式を処理するのは安全ですか?
- 8. PHPで処理した後にフォームを送信する
- 9. php投稿を安全にする
- 10. ファイルを安全にアップロードするC#/ PHP
- 11. HTML PHPフォーム処理;変数
- 12. PHPでファイルを安全にアップロードするには?
- 13. PHP Mcrypt、本当に安全ですか?
- 14. PHPフォームで複数のチェックボックスを処理する方法は?
- 15. 配列値をチェックするのにPHP @は安全ですか?
- 16. PHPコードの中にパスワードを安全に保存するには?
- 17. 動的に生成されたフォームを処理するPHP
- 18. javascriptによるフォーム処理
- 19. symfonyによる安全なファイル管理
- 20. PHP preg_functionsはマルチバイトで安全ですか?
- 21. なぜ再ハッシュ処理でより安全になりますか?
- 22. PHP、安全にフォームデータを送信するには?
- 23. JSのPHP htmlspecialcharsは安全ですか?
- 24. PHPセッションデータは安全ですか?
- 25. PHP - "インクルード"機能は安全ですか?
- 26. php:// tempは安全ですか?
- 27. PHPの安全ジェネリックデコレータ
- 28. 安全なPHPファイルアップロードスクリプト
- 29. セッションを安全にカウントする方法:Session_Start/End in Global.Asaxは安全で安全ですか?
- 30. 同じページのPHPでフォームを処理する
オム、なぜあなたはすべてで、それが必要なのでしょうか? – zerkms
この投稿のすべての質問に対する回答は、「はい!」です。それらのすべて。ユーザーから受け取ったものがデフォルトで有効な入力と一致しているとは決して信じられません。任意の内容の文字列で、この文字列を残りのコードに取り込む前にすべての条件をチェックする必要があります。 – Bazzz
なぜあなたはここでbase64_decodeをやっているのですか? –