0

私はMySQLデータベースにデータを保存するウェブサイトを持っていますMySQLのHTML墨塗り

HTMLをMySQLに挿入するか、私のウェブサイトに表示する際にエスケープする必要がありますか?

理想的には、私は自分のデータベースに生のHTMLを入力したいと思います。このようにして危険がありますか?

例のHTML:<h1>test</h1>

+0

何のためにHTMLをエスケープしますか?あなたが 'Click me'を持っていてそれを操作するなら、恐らくそれを破るでしょう。あなたが 'Barnes&Noble'を持っていて、それを' Barnes & Noble'に変換する必要があるのは、Webサイトに表示するには、最初にHTMLを持っていないからです。 ( "sanitizacion"という言葉は私のペットの覗き見の1つですが、それは性質上いくつかの文字列が悪いことを意味しますが、何らかの魔法の機能を適用して安全にすることができます) –

+0

@ÁlvaroGonzález HTMLを保存しませんが、私はそれらを制限したくありません。もちろん、HTMLは実行されません。それはちょうどそのまま表示されます –

+0

大きなフォントで 'test'のタイトルを見るのではなく、ページ上に実際のHTMLタグ(リテラル'

test

'テキスト)を表示したいのですか? –

答えて

1

通常、ユーザーがHTMLを保存しませんが、私は彼らが制限 になりたくありません。もちろん、HTMLは実行されません。 が表示されます

HTMLをMySQLに挿入する際、または私のウェブサイトに表示する際にエスケープする必要がありますか?

次に、最初にHTMLを作成する必要はありません。あなたはプレーンテキストを持っています。

HTMLで挿入するプレーンテキストをエスケープするのは高速ですが、1行に1GB相当のテキストを記述しない限り、キャッシュするのは意味がありません。テキストを保存する前にプレーンテキストに変換すると元のテキストがなくなり、を元に戻してのコードをにしないと、はJavaScriptの変数に入れたり、電子メールの件名として使用してください)。

関連する問題