問題タブ [htmlspecialchars]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - PHP:htmlspecialchars
私はプログラミングに不慣れで、htmlspecialcharsを以下のスクリプトに適用しようとしていますが、すべての試みでエラーメッセージが表示されます。私はそれが次のようなものであるべきだと信じています:echo htmlspecialchars($ lines)ですが、これが以下のコードにどのように適用されるか、または私が何か他のものを使用する必要があるかどうかはわかりません。
最終結果は、次の.txtファイルのテキストを変換する必要があります。アンナは、「ハンナの家には行かない」と述べました。
to:アンナは「ハンナの家には行かない」と言った。
php - PHP PDOを使用する場合、ユーザー入力と出力をサニタイズ/フィルタリングする必要がありますか?
ユーザー入力にPDOを使用していますが、現在、MySQLデータベースのコンテンツを表示するときにPDOを使用していません(SQLコマンドを使用した昔ながらの方法です)。
MySQLデータベースにデータを挿入するときに、ユーザーからの入力をフィルタリング/サニタイズする必要がありますか?
そして、代わりに出力をサニタイズする方法がある場合、出力をサニタイズするための最良の方法は何ですか?使用するだけの場合、または使用htmlspecialchars()
する必要がある場合など、私は行っstrip_tags()
てもいいですか?
プレースホルダーとプリペアドステートメントを使用しています。
ありがとうございました。
php - ユーザー入力の出力 - xss の防止
サイト内にアイテムを保存できる管理セクションがあります。それらが保存されると、フロントエンドに表示されます。私の表示の一部には、次のようなコードが含まれます。
低レベルで xss から保護するために、これに htmlspecialchars を含める必要がありますか?
php - テキストボックス値に htmlspecialchars を実装するにはどうすればよいですか?
こんにちは、現在テーブルを使用してカスタム メタ フィールドに値を入力しています。エピソードのタイトルというテキスト ボックスがあります。ここでの問題は、文字 ' " がフィールドに追加されると、すべてが混乱することです。htmlspecialchars を使用して、値を ' " ではなく " および ' として入力したいと考えています。以下のコードは、文字を変換するために機能しません。誰でも助けてもらえますか?
php - fputs() または fwrite() が html 特殊文字をエンコードすることがありますか?
"
html コンテンツで構成される文字列を html ファイルに出力していますが、html ファイルでは html 特殊文字がエンコードされています (たとえば\"
)。書き込み関数を使用する前に、htmlspecialcharacters_decode も使用しました。奇妙な部分は、私のコンピューターでは文字がエンコードされていないのに対し、サーバーにアップロードされたものはエンコードされていることです。どうすればこの問題に対処できますか?
予想通りありがとう!
php - htmlspecialchars()は他の特殊文字を翻訳しています
htmlspecialchars()は、次のような特殊文字を変換しているようです: āķūņūķīそれぞれのエンティティ番号に:
ā ķ ū ņ ū ķ ī
次のように、翻訳されていないものもあります。
žš
これらのアルファベットタイプの文字を翻訳しないようにしたいhtmlspecialchars()
(または他の関数) ...( php.netのマニュアルに示されているように)次の文字のみを翻訳するようにします。
- ' & '(アンパサンド)は'&'になります
- ' " '(二重引用符)は'"'になります ENT_NOQUOTESが設定されていない場合。
- " ' "(一重引用符)は'''になります ENT_QUOTESが設定されている場合のみ。
- ' < '(未満)は'&lt;'になります
- ' > '(より大きい)は'&gt;'になります
これが必要な理由は、POSTリクエストの後、このユーザー入力を実行してhtmlspecialchars()
から、新しいHTML入力のセットに戻すためです。&、 "、'、<、>などの文字は、表示エラーなどが発生しないように変換する必要があります。ただし、' āķūņūķī 'などの特殊文字は変更しないでください。そうしないと、ユーザーは非常に混乱します。
codeigniter - codeigniterの同じ変数でhtml_escapeとauto_linkを使用する
自分のサイトにユーザーコメントを表示したいのですが、html_escape(Codeigniterのhtmlspecialchars)を使用して出力をエスケープしています。しかし、Codeigniterのauto_link関数を使用してコメント内のURLをアクティブ化することも必要です。
両方の関数を同じ変数/コンテンツに適用するにはどうすればよいですか?
ユーザーコンテンツを信頼していないため、html_escapeを使用する必要があります。ただし、可能であれば、入力したURLを表示したいと思います。注:html_escapeとauto_linkの文字の間に競合はありません。
php -
XSS 攻撃を回避しながら、動的コンテンツでの htmlspecialchars() の使用を回避する
本当に簡単な問題であなたの助けが必要です。私のウェブサイトのいくつかのページのコンテンツは MySQL データベースに保存されて おり、ブラウザに出力するときにhtmlspecialchars()を適用しましたが、実際には<img src="images/me.jpg">
有効であるはずのプレーン テキストとしてレンダリングされる正当なものがあります。画像は記事内容の一部です。
画像を正常に表示し、同時に XSS 攻撃の可能性などを回避するにはどうすればよいですか。
ありがとう
php - 画面にエコー/印刷するすべてのものにnl2br(htmlspecialchars($ text))を使用する必要がありますか?
タイトルはちょっとそれをすべて言います。画面にエコー/印刷するすべてのものにnl2br(htmlspecialchars($ text))を使用する必要がありますか?
私は周りを見回してきましたが、ユーザーからの入力を処理するときは、それをエスケープしてデータベースに挿入することでサニタイズするという言葉のようです。次に、データベースから取得するときに、画面に吐き出す場合は、htmlspecialchars()を使用して、わかりにくい文字を安全な文字に変換し、改行を改行に変換する場合は、その周りにnl2br()を使用する必要がありますか?
echo nl2br(htmlspecialchars($text))
通常のecho/printステートメントの代わりに、ユーザーから取得した可能性のあるものを出力する必要がある可能性があるすべての場所でそれを使用するsafeEcho()という新しい関数を作成する必要がありますか?