ホームページ  >  記事  >  バックエンド開発  >  PHPフォームデータ

PHPフォームデータ

WBOY
WBOYオリジナル
2016-06-23 13:15:33777ブラウズ

うわー

ユーザーが入力したデータは、strip_tags と utf8_decode で処理されます。データを読み取るために htmlspecialchars を使用する必要があるのはなぜですか?
タグは、以前は、strip_tags を使用して削除されていました。

ディスカッションへの返信 (解決策)

if($text !=trip_tags($text)) {

//HTML コンテンツが含まれており、それをどう扱うかはあなた次第です

} utf8_decode は中国語では無効です。より煩雑になるだけです 動的コンテンツは、htmlspecialcharsを使用してHTMLエンコードする必要があります
動的コンテンツは、htmlspecialcharsを使用してHTMLエンコードできます

if($text !=trip_tags($text)) {
//HTMLコンテンツが含まれます。その方法対処するのはあなた次第です
}
utf8_decodeは中国語のみ無効です ますます面倒になります

動的コンテンツはhtmlspecialcharsを使用してHTMLエンコードする必要があります
動的コンテンツはhtmlspecialcharsを使用してHTMLエンコードできます

utf8_encode()関数はISOをエンコードします-8859-1 文字列を UTF-8 に変換します。
utf8_encode() 関数はどのような状況で使用されますか?
ISO-8859-1 はシングルバイト文字セットです
この関数のエイリアスは latin1 (MySQL のデフォルト文字セット) であることを知っておく必要があります。 )
latin1 ヨーロッパ標準文字セットとしても知られています


if($text !=trip_tags($text)) {
//HTML コンテンツが含まれており、それを扱う方法はあなた次第です
}
utf8_decode は無効です中国語の場合、状況は悪化するだけです。 カオス

ダイナミック コンテンツは、htmlspecialchars を使用して HTML エンコードする必要があります
ダイナミック コンテンツは、htmlspecialchars を使用して HTML エンコードできます

それでは、入力データについては、htmlspecialchars だけで十分ですか?

データベースに保存する前に、次のようにします。 $input_data = htmlspecialchars($input_data );
データベースから読み取ります (処理は必要ありません) $input_data


なぜですか?それで絶対に? !

渡されたデータがオンラインエディターの場合、htmlspecialchars も使用しますか?

さらに、htmlspecialchars は ' (一重引用符) を処理しませんが、データベース内でエスケープする必要があります


なぜですか?それで絶対に? !

渡されたデータがオンラインエディターの場合、htmlspecialchars も使用しますか?
さらに、htmlspecialchars は ' (一重引用符) を処理しませんが、データベース内でエスケープする必要があります


今少し混乱していますが、
フォームをデータベースに保存する前に入力データに対してどのような処理を行う必要があるか?
データベースから読み取る 今ページを取得するときに、読み取ったデータに対してどのような処理を行う必要がありますか?

データベースに入るときに特殊文字をエスケープします

データベースからエクスポートした後、必要に応じて対応する処理を行います

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。