ホームページ >バックエンド開発 >PHPチュートリアル >シンプルな PHP アンチインジェクション コンテンツ フィルタリング方法_PHP チュートリアル

シンプルな PHP アンチインジェクション コンテンツ フィルタリング方法_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:48:021120ブラウズ

コンテンツ フィルタリングは主に、セキュリティ インジェクションやクロスドメイン操作を防止するために作成した、簡単なインジェクション防止コンテンツ フィルタリング プログラム コードをいくつか見てみましょう。この記事がすべての学生に役立つことを願っています。

方法 1、無駄なコンテンツをフィルタリングする

無駄な情報のフィルタリングが厳しく、有益な情報が入力されない可能性があります。インターネット上で他のフィルタリング方法を見つけることもできます。

コードは次のとおりですコードをコピー
関数checkHTML($data){

$ret = preg_match("/['.,:;*?~`!@#$%^&+=)(<>{}]|]|[|/||"||/",$データ);
if ($ret == 1) {
false を返します;
} その他 {
true を返します;
}
}

例 2 いくつかの HTML タグをフィルターする

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

関数うーん($str)
{
$farr = 配列(
"/s+/", //余分な空白をフィルタリングします
"/<(/?)(scripti?framestylehtmlbodytitlelinkmeta?%)([^>]*?)>/isU", //悪意のあるコンテンツを導入したり、表示レイアウトを悪意を持って変更したりする可能性のある <スクリプトやその他のコードをフィルタリングします, フラッシュなどを挿入する必要がない場合は、<オブジェクト フィルタリング
を追加することもできます "/(<[^>]*)on[a-zA-Z]+s*=([^>]*>)/isU", //JavaScript の on イベントをフィルターします
); $tarr = 配列(
「」、
"<123>", //安全でないタグを直接削除したい場合は、ここを空白のままにすることができます
「12」、
); $str = preg_replace( $farr,$tarr,$str); $str を返します。 }




方法 3. 上記 2 つの方法はいずれも、フィルタリングするコンテンツをプログラムに配置します。次に、フィルタリングするコンテンツをテキストに配置します。2 回目は、ファイルの内容を読み取って判断するだけです。これは、コンテンツのメンテナンスやフィルタリングに便利です。

コードは次のとおりです

コードをコピー { // ファイルの内容を取得して配列に変換する 2 つの方法:
if($_POST)
/*

$fcon = file_get_contents("./filter.txt"); $filter_word =explode("n",$fcon); */
$filter_word = file("./filter.txt"); //$filter_word = array("test1","test2","test3","test4"); $str = $_POST["混乱"]; for($i=0;$i {
if(preg_match("/".(trim($filter_word[$i]))."/i",$str))
{
echo "<script>alert('入力したコンテンツには違法なコンテンツが含まれています。再入力してください!');</script>"; echo "return"; 出る
}
}
echo "入力した内容は次のとおりです。".$str; }
?>

フィルタリングが有効かどうかをテストします:








www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/632820.html技術記事コンテンツ フィルタリングは主に、セキュリティ インジェクションやクロスドメイン操作を防止するために私がコンパイルした簡単なアンチインジェクション コンテンツ フィルタリング プログラム コードを見てみましょう。この記事が皆様のお役に立てば幸いです。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。