webサイト制作の勉強|2017月7月クラスブログ

webサイト制作の勉強に関する解説ブログです。

htmlspecialcharsとENT_QUOTESの設定

特殊文字をブラウザで文字列として表示させるには htmlspecialchars 関数を使用します。これを使用すると、各文字列が <、>、&、" に変換されて返されます。
さらに続けて ENT_QUOTES と書くと、' (シングルクォート)も ' に変換されて返されます。

この処理は、訪問者から送信されたデータを表示する際には必ず行うようにしてください。もしこの処理を忘れると、フォームから送信する際に入力されたHTMLやJavaScriptをそのまま解釈してしまいます。
もし悪意あるJavaScriptが埋め込まれると訪問者全員に影響を与えてしまうため、それを防ぐためにも htmlspecialchars で安全な文字列に変換します。



以前の記述

$name = $_POST["namae"];

htmlspecialchars 関数を指定した場合

$name = htmlspecialchars($_POST["namae"], ENT_QUOTES);

PHP: htmlspecialchars - Manual