ホームページ  >  記事  >  バックエンド開発  >  SQLインジェクションを効果的に防ぐ入力値/フォーム送信パラメータのフィルタリング方法_PHPチュートリアル

SQLインジェクションを効果的に防ぐ入力値/フォーム送信パラメータのフィルタリング方法_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:18:31986ブラウズ

SQL インジェクションや不正な攻撃を防ぐために入力値/フォーム送信パラメーターをフィルターするメソッド:

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

/**
* SQL および PHP ファイル操作をフィルタリングするためのキーワード
* @param string $string
* @return string
* @author zyb */
private function filter_keyword( $string ) {
$ キーワード = 'select|insert|update|delete|'|/*|*|../|./|union|into|load_file|outfile';
$arr =explode( '|', $keyword ) ;
$ result = str_ireplace( $arr, '', $string );
return $result;

/**
* 入力された番号が正当かどうかを確認し、正当な場合は対応する ID を返し、そうでない場合は false を返します
* @param integer $id
* @returnmixed
* @author zyb */
$result = false; if ( $ id !== '' && !is_null( $id ) ) {
$var = $this->filter_keyword( $id ) // SQL および PHP ファイル操作のキーワードをフィルターします
if ( $var != = ' ' && !is_null( $var ) && is_numeric( $var ) ) {
$result = intval( $var )
}
}
return $result
}

/**
* 入力された文字が正当かどうかを確認し、正当な場合は対応する ID を返し、そうでない場合は false を返します
* @param string $string
* @returnmixed
* @author zyb */
protected function check_str( $string ) {
$result = false;
$var = $this->filter_keyword( $string ) // SQL および PHP ファイル操作をフィルタリングするためのキーワード
if ( !empty( $var ) ) {
if ( !get_magic_quotes_gpc() ) { // magic_quotes_gpc が開いているかどうかを判断します
$var = addlashes( $string ); // magic_quotes_gpc が開いていない場合に送信されたデータをフィルターします
}
//$var = str_replace( "_ " , "_", $var ); // '_' を除外します
$var = str_replace( "%", "%", $var ); // '%' を除外します
$var = nl2br( $var ); ; // キャリッジリターン変換
$var = htmlspecialchars( $var ); // HTMLタグ変換
$result = $var

;



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

www.bkjia.com

tru​​e
http://www.bkjia.com/PHPjc/621659.html

技術記事 SQL インジェクションや不正な攻撃を防ぐために入力値/フォーム送信パラメータをフィルタリングするメソッド: 次のようにコードをコピーします: /** * SQL および PHP ファイル操作をフィルタリングするためのキーワード* @param string $string * @r...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。