フォームのクロスサイトスクリプティング(XSS)を防ぐ【PHP】

フォームにHTMLタグやJavaScriptを放り込まれて困ることがあるそうで
エスケープ方法を調べたのでメモ。

$test = htmlspecialchars($form, ENT_QUOTES);

htmlspecialcharsを使い特殊文字などをそのまま表示する方法で
もしHTMLタグやJavaScriptなどの特殊記号を含むものをフォームに放り込まれても
エスケープできます。

ただすhtmlspecialcharsのみだとシングルクォートが変換されないので
ENT_QUOTESをつけたすことによってシングルクオートも ' に変換されます。

参考:
PHPのhtmlspecialcharsにはENT_QUOTESを付ける:phpspot開発日誌

シェアする

  • このエントリーをはてなブックマークに追加