問題タブ [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と組み合わせたタグに少し問題があります。私のコードは次のとおりです。
ブラウザを使用する"Niederländische Zitate"
と「Niederl�ndischeZitate」が"Niederländische Zitate"
出力されますブラウザを使用すると「NiederländischeZitate」が出力されます
誰かがこれを修正する方法を知っていますか?
php - htmlspecialcharsとENT_QUOTESが機能していませんか?
基本的に、MySQLデータベースからのデータを表示する上で、htmlspecialchars()
一重引用符と二重引用符を安全なエンティティに変換する必要がある以下の関数があります。私が抱えている問題は、ソースコードの表示にあります。これは< > &
、一重引用符と二重引用符を変換するためにも必要な場合にのみ変換されます。
次に、たとえば使用したい場合は、次のようにします。
一重引用符と二重引用符を変換しない理由を誰かに教えてもらえますか?
アップデート
奇妙なことhtmlsan()
に、電子メールのコメントに使用されており、電子メールのソースコードを表示すると、それらが変換されますが、Webページに表示するときにデータベースからの一重引用符/二重引用符は変換されないようです。データベース照合もutf8_general_ciに設定されており、データベース接続などでutf8を使用していることを宣言します。
htmlspecialchars - htmlspecialcharsは<を>に変換しています
私は小さなフォーラムを構築していて、コメントを投稿するとこの問題が発生しました。その<
中には、htmlspecialcharsがそれをに変換してい>
ます。フォーラムへのリンク(デンマーク語ですが、使用できるはずです)。
php - いつ htmlspecialchars() 関数を使用しますか?
こんにちは、htmlspecialchars() を使用する適切な場所はいつなのか疑問に思っていました。データベースにデータを挿入する前ですか、それともデータベースからデータを取得するときですか?
php - データベースからブラウザーに html データを出力する際のベスト プラクティス
データベースにhtmlデータを保存します。
HTML データは非常に単純で、wysiwyg エディターによって生成されます。
html データをデータベースに保存する前に、HTMLPurifier を使用して実行し、問題を取り除きます。
データをブラウザに出力すると、それはhtmlデータであるため、明らかにphpのhtmlspecialchars()を使用できません。
XSS 攻撃に関する限り、これに問題があるかどうか疑問に思っています。データベースに保存する前に HTMLPurifier を介してデータを渡すだけで十分ですか? 不足しているものはありますか? 他に取るべき手順はありますか?
(事前に)ご協力いただきありがとうございます。
sql - データベース内の HTML 特殊文字を取り除くのに役立ちます
サイトを interspire CMS から Joomla に移行しました! CMS。記事のすべてのデータベースを移行することができましたが、いくつかの記事には奇妙な問題があります。joomla からページにアクセスすると、タイトルに のような HTML エンティティが含まれています’
。
私が使用している CMS から推測できるように、私はサーバー側として PHP を使用し、データベースとして MySql を使用しています。
データベース内の記事のタイトルをhtmlspecialchars_decode
ANDhtml_entity_decode
で調べてそれらを削除しようとしましたが、効果がありませんでした。
DB から例を取得してエコーすると、問題ないように見えます。
joomla の記事ページに移動すると、次のようになります。
What’s Your Pleasure, Lasagna Or Pizza Manchester Style?
データベースの内容を直接確認するために PhpMyAdmin にアクセスすると、タイトルの内容は次のようになります。
What’s Your Pleasure, Lasagna Or Pizza Manchester Style?
私はシンボルを削除しようとしました:
またはこのように置き換えます
しかし、何もありません。デコードする代わりに再度エンコードしようとすると(正しいDBにいるかどうかを確認するため)、機能して再度エンコードされました...
どうぞ、新しいアイデアをいただければ幸いです...ありがとう、ヤニパン
xss - 私の場合、htmlspecialchars は低レベルの XSS に対して十分ですか?
ログインを求める前にアクセスしようとした URL を保持するように、管理者に機能を追加しました。したがって、次の場所に行くと:
/admin/foo/bar?baz
次の場所にリダイレクトされます。
/admin/auth/login
あなたがログインした後、私の機能アドオンの前に、あなたはいつも/admin/user/profile
. 今、私/admin/foo/bar?baz
はセッション変数に保存します$_SESSION['from']
.
login<form>
では、非表示の値はセッションの値を取ります:
<input type="hidden" name="from" value="<?php echo htmlspecialchars($_SESSION['from'];)?>">
次に、フォームが送信された後、リダイレクトが行われます。
XSS と htmlspecialchars に関連する他の質問を見て、考えられるすべての XSS 試行を修正できないことを認識していますが、これは「低レベル」の XSS 試行に対して正常に機能しますか?
php - XSS: REQUEST_URI は htmlspecialchars() を介して実行されます - 次に & を & に置き換えます - XSS インジェクションを防ぐのに十分ですか?
シナリオ:
を置き換えたいのですが、「&」文字はそのままに" ' < >
しておきます。" ' < >
私が扱っている文字列は URL であり、URL パラメーターを&
ではなくで区切る必要があります&
。
解決例:
質問:
$url
自分のページ ( echo $url;
HTML や JavaScript 内など)で使用すると、XSS によって悪用される可能性がありますか?
類似の質問:
XSS & をカバーする SO に関する他の投稿がありますが
htmlspecialchars()
、「&」文字 (およびそれが許可する可能性のある htmlentities) が XSS にさらされる可能性があるかどうかについての答えが見つかりません。
codeigniter - codeigniter で input-> を使用する際の引用符の問題
codeigniter プロジェクトでデータを取得するために input->post を使用しています。これにより引用符が自動的にフィルタリングされ、addslashes() / htmlspecialchars() 関数を使用する必要はないと想定していました。
しかし、それは引用符をチェックしません。
core>input.php も編集しようとしましたが、役に立ちませんでした。設定で XXS を有効にしても役に立ちません。
すべてのページで編集する必要がないように、引用をフィルター処理する簡単な方法を教えてください。
php - 特殊文字を表示するように CSV データをフォーマットして、MS Excel または Calc 内でテキストとしてのみ表示するにはどうすればよいですか?
MYSQL から CSV ファイルにデータをエクスポートするスクリプトがあります。データは数値、テキスト、および特殊文字です。すべてのフィールドは二重引用符で区切られ、コンマで区切られます。
次の形式でデータをエクスポートする必要があります。
「これは (x2") ひどく文法化された文です。はい、「いいえ」、おそらく & もっと」、「0043」、「false」など..
ただし、各フィールドに htmlsepcialchars を適用する場合にのみ動作させることができます。データは上記のままにしておく必要がありますが、Excel や Calc に入ると、コンマや一重引用符などでデータが台無しになります。文の一部が 1 つのセルにあり、別のセルにあることを意味します。
}