こんにちは いつhtmlspecialchars()を使用するのが適切なのでしょうか。データをデータベースに挿入する前か、データベースからデータを取り出す前ですか?いつhtmlspecialchars()関数を使用するのですか?
答えて
データをHTMLにエコーするときにのみ、このメソッドを呼び出す必要があります。
データベースにエスケープされたHTMLを保存しないでください。それはちょうどより迷惑なクエリになります。
データベースには、HTML表現ではなく、実際のデータを格納する必要があります。
htmlspecialchars
EVERYあなたはHTML内でコンテンツを出力するので、HTMLではなくコンテンツとして出力します。
コンテンツをHTMLとして扱うことを許可すると、最低でもバグへの扉が開かれたばかりであり、XSSの合計が最悪の場合はハッキングします。
あなたはその質問を誤解しています。 – SLaks
ユーザーが入力したものをデータベースに保存します。 これをpublicに表示するときは、htmlspecialchars()
を使用して、xss保護を提供します。
しかし、彼は何を求めているのですか?あなたはあなたの答えに理由を提示しませんでした。編集を検討してください。 –
ガイド - あなたは1つのシンプルなコンセプトを理解する必要が開始するにはPHP
にはhtmlspecialchars()関数を使用する方法:レンダリングを。
どのようなレンダリングですか? HTMLはこのこんにちはのような大胆に
<b>Hello</b>
を変換する際 レンダリングです。それはレンダリングです。
だから...いつhtmlspecialchars()関数を使用するのですか?
HTMLコンテンツをレンダリングする場所はどこにでもあります。 たとえば、あなたはjQueryのを使用していて、あなたがこれを行う場合:
$("#YourDiv").html("<b>Hello</b>");
のdivの内容は、こんにちはになります。テキストをHTMLにレンダリングしました。
あなたがこの方法でメッセージを表示する場合(ユーザーが書いた):
<b>Hello</b>
あなたが入れてあります。
$("#YourDiv").text("<b>Hello</b>");
こんにちはがレンダリングされることはありませんそのように。
メッセージ(ユーザーが書いたように)テキストボックスに、テキストエリアなどをロードしたい場合は...あなたが入れてあります。
<input type="text" class="Texbox1" value="">
<script>
$(".Textbox1").val("<b>Hello</b>");
</script>
インサイド
<b>Hello</b>
が表示されます問題のないテキストボックス。
結論:これまで
どのようなデータフォームへのユーザー入力、など...通常は、データを保存します。 機能を使用しないでください。ユーザーが12345をそのまま送信した場合。何もフィルタリングしないでください。ページ内のデータをユーザーに表示するときにフィルタをかけるだけで済みます。あなたは、あなたがレンダリングするかどうか、またはユーザーが書いたものを選択するかどうかだけを決定します。 *それを覚えています。
よろしくお願いいたします。
- 1. htmlspecialcharsアクセント付き関数
- 2. 関数でreturnを使用するのはいつですか?
- 3. 関数htmlspecialcharsを使用すると、array_walk_recursiveは機能しません。
- 4. 関数*関数ではいくつのyieldキーワードを使用できますか?
- 5. なぜ "htmlspecialchars"が遅いのですか?
- 6. htmlspecialcharsが間違って使用されていますか?
- 7. Kotlinでインライン関数を使用するのはいつですか?
- 8. ポールC関数のPOLLOUTイベントをいつ使用するのですか?
- 9. Golangの関数宣言ではなく関数式を使用するのはいつですか?
- 10. 1つの引数を持つ_.partial関数を使用する
- 11. なぜスクリプト関数が見つからないのですか?initializeTrigger関数を使用するとsendInvoiceIfNew?
- 12. 1つの関数で複数のif文を使用していますか?
- 13. PDOでのhtmlspecialchars関数の準備と実行
- 14. htmlspecialchars()を使用する際に&記号を使用する方法
- 15. いくつかの無関係の関数で定数を使用する正しい方法
- 16. htmlspecialcharsを使用した改行?
- 17. この未使用関数を持つ点は何ですか?
- 18. いくつかのOpenCV関数を使用するとセグメンテーションエラーが発生する
- 19. MySQLに挿入する前にhtmlspecialchars()を使用するのは良いですか?
- 20. 適用するjavascript関数は何を行い、いつ使用するのですか?
- 21. いつコールバック関数を使用しますか?
- 22. 関数でmallocを使うのはいつですか?
- 23. Erlangでマクロ関数を使うのはいつですか?
- 24. JavaScriptで空白のパラメータを持つ関数を使用する
- 25. C言語の2つの関数でpthreadを使用する
- 26. 関数内で1つのDataFrameの列を使用する - Python
- 27. メンバ関数以外の非フレンド関数をいつ使うべきですか?
- 28. 関数内の引数に対してグローバル変数を使用するのはいつですか?
- 29. 複数のターゲットを持つモジュラーライブラリを使用するcmake関数
- 30. JSのPHP htmlspecialcharsは安全ですか?
必要に応じて。 –