htmlフォームからPHPへ送られた文字情報の不要な命令文を削除する方法

この記事がお役に立てたならシェアしてくれると嬉しいです。

文字データを入力フォームから投稿する場合、htmlのタグ等も一緒に投稿する事が可能です。
そういったhtmlのタグが必要な場合もありますが、それが不必要な場合には「strip_tags」関数でhtmlのタグ等を消去して文字のみにする事も出来ます。

スポンサーリンク

サニタイズする方法

■strip_tags

strip_tags(フォームから受け取った文字列の変数);
これを使うと命令等がカットされ文字のみになります。

<?php

$data='<a href="test.php">リンク</a>と'."<strong>ストロング</strong>のサンプルです";
$moji=strip_tags($data);

print $data;
echo "<BR><BR>\r\n";
print $moji;
echo "<BR><BR>\r\n";

?>

strip_tagsを使うと、このように命令部分も無くなりシンプルな状態にサニタイズされます。
htmlフォームからPHPへ送られた文字情報の不要な命令文を削除する方法

またソースも

<a href=”test.php”>リンク </a> と<strong >ストロング</strong >のサンプルです<BR ><BR>
リンクとストロングのサンプルです <BR>< BR>

上記の様に、例えば「<strong > ストロング </strong >」が「ストロング」というように削除された状態になります。
そのため逆にstrip_tagsを使った変数を使う前の状態に戻すのは不可能です。

似た命令に「htmlspecialchars」がありますがhtmlspecialcharsはhtmlタグを機能しないようにし命令自体も文字変換します。
これはhtmlspecialchars_decodeを使うと元に戻せるという利点があります。

次回は文字データの特定の文字を指定して置換する方法を紹介します。

スポンサーリンク

この記事がお役に立てたならシェアしてくれると嬉しいです。


最新記事の更新情報をお届けします。

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)