一般性的防注入,只要使用php的 addslashes 函數就可以了。
Php代碼
$_POST = sql_injection($_POST);
function sql_injection($content) {
if (!get_magic_quotes_gpc()) {
if (is_array($content)) {
, $content[$key] = addslashes($value);
} addslashes($content);
}
}
Php代碼
/**
* 函數名稱:inject_check()
* 函數作用:偵測提交的值是不是含有SQL注射的字符,防止注射,保護伺服器安全 返 回 值:回傳偵測結果,ture or false
*/
function in ('select|insert|update|delete|'|/*|*|../|./|union|into|load_file|outfile', $sql_str); // 進行過濾 代碼
/**
* 函數名稱:verify_id()
* 函數作用:校驗所提交的ID類別值是否合法
處理後的ID */ function verify_id($id=null) { // 是否為空判斷 elseif (inject_check($id)) { exit('提交的參數非法!'); } // 注射判斷)($is_yelseif; / / 數位判斷
$id = intval($id); // 整數化
}
Php代碼
/**
* 函數名稱:str_check()
* 函數作用:將提交的字串進行過濾
後的字串 */ $str ) { if (!get_magic_quotes_gpc()) { // addslashes($str); // 過濾 }$str = str_replace("_", "_", $str); // 把 '_'過濾掉 // 把 '% '過濾掉
return $str;
}
function post_check($post) {
if magic_quotes_gpc是否為開啟
$post = addslashes($post); / }
$post = str_replace("_", "_", $post); // 把 '_'過濾掉
$post = str_replace("%", "%", = nl2br($post); // 回車轉換
$post = htmlspecialchars($post); // html標籤轉換
}