ホームページ >バックエンド開発 >PHPチュートリアル >:正規表現を使って or 1 = 1 を検証する方法

:正規表現を使って or 1 = 1 を検証する方法

WBOY
WBOYオリジナル
2016-06-23 13:52:101418ブラウズ

目的为了防止mysql注入操作。


回复讨论(解决方案)

[\s\S]*?or[\s\S]*?\d+[\s\S]*?=[\s\S]*?\d+

过滤空格和特殊字符

$a = array(  "or 1 = 1",  "Or 1 = 1",  "or 3 =3",  "or now() = now()",  "or 'a' = 'a'",);foreach($a as $s)  echo $s, " :\t\t", preg_match('/or\b.+(\b\w+\b)[^=]*=.*\1/i', $s), PHP_EOL;
or 1 = 1 :		1Or 1 = 1 :		1or 3 =3 :		 1or now() = now() :	1or 'a' = 'a' :		1
还有什么怪异的写法,你加进去自己试

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。