ホームページ >バックエンド開発 >PHPチュートリアル >低品質の PHP コードの簡略化_PHP チュートリアル

低品質の PHP コードの簡略化_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 15:41:35949ブラウズ

コードをコピーします コードは次のとおりです:

echo("

クエリの検索結果:")
$_GET['query'].".?>


このコードの主な問題は、ユーザーが送信したデータを Web ページに直接表示するため、XSS 脆弱性が生じることです。実はこの穴を埋める方法はたくさんあります。では、どのようなコードが必要なのでしょうか?
コードをコピーします コードは次のとおりです:

echo("

クエリの検索結果:")
htmlspecialchars($_GET['query'])。 ";
?>



これは最小要件です。 XSS の脆弱性は htmlspecialchars 関数によって埋められ、不正な文字がブロックされました。
コードをコピーします コードは次のとおりです:

if(isset($_GET['query']))
echo'

クエリの検索結果:',
htmlspecialchars($ _GET['query'],ENT_QUOTES).'.

'
?>

そのようなコードを書ける人こそ私が雇いたい人です:
**出力する前に$_GET['query']の値が空かどうかを確認してください。
*echo コマンド内の余分な括弧は削除されました。
* 文字列は一重引用符で修飾されるため、文字列から置換可能な変数を検索する際の PHP 時間が節約されます。
* エコー時間を節約するには、ピリオドの代わりにカンマを使用します。
* ENT_QUOTES フラグを htmlspecialchars 関数に渡して、一重引用符もエスケープされるようにします。これは最も重要なことではありませんが、良い習慣でもあります。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/321134.html技術記事次のようにコードをコピーします: ? echo("psearch results for query:"). $_GET['query']."./p";ウェブページから...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。