程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 輸入值/表單提交參數過濾有效防止sql注入的方法

輸入值/表單提交參數過濾有效防止sql注入的方法

編輯:關於PHP編程

    輸入值/表單提交參數過濾可以有效防止sql注入或非法攻擊,下面為大家介紹些不錯的方法,感興趣的不要錯過

    輸入值/表單提交參數過濾,防止sql注入或非法攻擊的方法:  復制代碼 代碼如下: /**  * 過濾sql與php文件操作的關鍵字  * @param string $string  * @return string  * @author zyb <[email protected]>  */  private function filter_keyword( $string ) {  $keyword = 'select|insert|update|delete|'|/*|*|../|./|union|into|load_file|outfile';  $arr = explode( '|', $keyword );  $result = str_ireplace( $arr, '', $string );  return $result;  }    /**  * 檢查輸入的數字是否合法,合法返回對應id,否則返回false  * @param integer $id  * @return mixed  * @author zyb <[email protected]>  */  protected function check_id( $id ) {  $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  * @return mixed  * @author zyb <[email protected]>  */  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 = addslashes( $string ); // 進行magic_quotes_gpc沒有打開的情況對提交數據的過濾  }  //$var = str_replace( "_", "_", $var ); // 把 '_'過濾掉  $var = str_replace( "%", "%", $var ); // 把 '%'過濾掉  $var = nl2br( $var ); // 回車轉換  $var = htmlspecialchars( $var ); // html標記轉換  $result = $var;  }  return $result;  }   
    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved