ホームページ > バックエンド開発 > PHPチュートリアル > PHP で $_GET と $_POST を使用して SQL インジェクションをフィルターする方法、_get_post_PHP チュートリアル

PHP で $_GET と $_POST を使用して SQL インジェクションをフィルターする方法、_get_post_PHP チュートリアル

WBOY
リリース: 2016-07-13 10:15:28
オリジナル
1312 人が閲覧しました

PHP、_get_postで$_GETと$_POSTによるSQLインジェクションをフィルタリングする方法

この記事の例では、PHP で $_GET と $_POST による SQL インジェクションをフィルタリングする方法を説明し、参考のために皆さんに共有します。具体的な分析は次のとおりです:

この関数は、たとえば、id=1 などの一部の機密 SQL コマンドのみをフィルターできます。

主な実装コードは次のとおりです:

コードをコピーします コードは次のとおりです:
if (!get_magic_quotes_gpc())
{
if (!empty($_GET))
{
$_GET = まつ毛を深く追加($_GET);
}
if (!empty($_POST))
{
$_POST = ラッシュを追加します_ディープ($_POST);
}
$_COOKIE = まつげの深さを追加します($_COOKIE);
$_REQUEST = ラッシュを追加します_ディープ($_REQUEST);
}
関数はlashes_deep($value)を追加します
{
if (空($value))
{
$value を返します;
}
それ以外
{
return is_array($value) ? array_map('addslashes_deep', $value) : addslashes($value);
}
}

この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。

phpフィルターSQLインジェクション、初心者

PHP4環境でSQLインジェクションを防ぐコードを書きましたが、実際に使ってみるとPHP5でも互換性がありますので、どなたでも改変してご利用ください。
コードは次のとおりです:
/*
sqlinアンチインジェクションクラス
*/
class sqlin
{

//dowith_sql($value)
function dowith_sql($str)
{
$str = str_replace(" と ","",$str);
$str = str_replace("実行","",$str);
$str = str_replace("更新","",$str);
$ str = str_replace( "count","",$str);
$str = str_replace("chr","",$str);
$str = str_replace("mid","",$str);
$str = str_replace ("master","",$str);
$str = str_replace("truncate","",$str);
$str = str_replace("char","",$str);
$str = str_replace("宣言","",$str);
$str = str_replace("選択","",$str);
$str = str_replace("作成","",$str) ;
$str = str_replace("削除","",$str);
$str = str_replace("挿入","",$str);
$str = str_replace("'","",$str) );
$ str = str_replace(""","",$str);
$str = str_replace(" ","",$str);
$str = str_replace("または","",$str );
$ str = str_replace("=","",$str);
$str = str_replace("%20","",$str);
//echo $str;
return $str;
}
//aticle() SQLインジェクション防止関数
function sqlin()
{
foreach ($_GET as $key=>$value)
{
$_GE...残りのテキスト>>

php thinkphp のアンチ SQL インジェクションとフィルタリングの問題については

これら 2 つを使用する前に、それらが有効かどうかを確認します。有効でない場合は、次の 2 つを使用してフィルタします。
mysql_real_escape_string();例:
if (!get_magic_quotes_gpc()) {
$lastname =addslashes($_POST['lastname']);
//または mysql_real_escape_string($_POST['lastname'])
} else {
$lastname = $ _POST ['姓'];
}



http://www.bkjia.com/PHPjc/904930.html

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/904930.html技術記事 SQL インジェクションをフィルタリングするための php の $_GET と $_POST のメソッド、_get_post この記事では、SQL インジェクションをフィルタリングするための php の $_GET と $_POST のメソッドを説明し、参考のために共有します。具体的な分析は次のとおりです: これは...
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート