この記事の例では、PHP でのフォーム送信で HTML タグをフィルターする方法について説明します。参考のためにみんなで共有してください。具体的な実装方法は以下の通りです
単純なコメント機能を作成すると、多くの HTML タグが送信されることがあり、これらのタグによってページ上で外部接続が発生することがあります。PHP でフォームによって送信された HTML タグをフィルタリングする方法を見てみましょう。
最近のコメントにはロボットによって送信された投稿リンクがいくつかありますが、それらはすべてスパム コメントです。この不要なリンク コンテンツの表示を減らすために、実際に php を使用して、フォーム POST によって送信された html タグを削除することができます。これにより、マシンによって送信された情報が期待どおりの結果を得られなくなります。また、seo/seo.html" target="_blank">検索エンジンからのペナルティも軽減できます
タグを削除する例を次に示します。
nction filterhtml($str)
{
$str=stripslashes($str);
$str=preg_replace("/\s+/", ' ', $str) //余分な改行をフィルター
$str= preg_replace("/[ ]+/si",'',$str); //フィルター__(""の後にスペースあり)
$str=preg_replace("/\!--.*?--> ;/ si",",$str); //コメント
$str=preg_replace("/(\!.*?)>/si",",$str); //フィルタDOCTYPE
$str =preg_replace ("/(\/?html.*?)>/si",'',$str); //HTMLタグをフィルタリング
$str=preg_replace("/(\/?head.*?)> ;/ si",'',$str); //headタグをフィルタリング
$str=preg_replace("/(\/?meta.*?)>/si",'',$str); //メタをフィルタリングtag
$str=preg_replace("/(\/?body.*?)>/si",'',$str); //ボディタグをフィルタリング
$str=preg_replace("/(\/?link . *?)>/si",'',$str); //リンクタグをフィルター
$str=preg_replace("/(\/?form.*?)>/si",'',$str ) ; //フォームタグのフィルタ
$str=preg_replace("/cookie/si","COOKIE",$str); //COOKIEタグのフィルタ
$str=preg_replace("/(applet.*?)> .*?)(\/applet.*?)>/si",'',$str); //アプレットタグをフィルタリング
$str=preg_replace("/(\/?applet.*?)>/ si",",$str); //アプレットタグをフィルタリング
$str=preg_replace("/(style.*?)>(.*?)(\/styl...残りのテキスト > >