程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php中$_GET與$_POST過濾sql注入的方法,_get_post

php中$_GET與$_POST過濾sql注入的方法,_get_post

編輯:關於PHP編程

php中$_GET與$_POST過濾sql注入的方法,_get_post


本文實例講述了php中$_GET與$_POST過濾sql注入的方法,分享給大家供大家參考。具體分析如下:

此函數只能過濾一些敏感的sql命令了,像id=1這種大家還是需要自己簡單過濾了。

主要實現代碼如下:

復制代碼 代碼如下:if (!get_magic_quotes_gpc())
{
if (!empty($_GET))
{
$_GET  = addslashes_deep($_GET);
}
if (!empty($_POST))
{
$_POST = addslashes_deep($_POST);
}
$_COOKIE   = addslashes_deep($_COOKIE);
$_REQUEST  = addslashes_deep($_REQUEST);
}
function addslashes_deep($value)
{
if (empty($value))
{
return $value;
}
else
{
return is_array($value) ? array_map('addslashes_deep', $value) : addslashes($value);
}
}

希望本文所述對大家的PHP程序設計有所幫助。


php過濾sql注入,新手

我在PHP4環境下寫了一個防SQL注入的代碼,經過實際使用在PHP5下也兼容,歡迎大家使用修改,使用。
代碼如下:
<?php
/*
sqlin 防注入類
*/
class sqlin
{

//dowith_sql($value)
function dowith_sql($str)
{
$str = str_replace("and","",$str);
$str = str_replace("execute","",$str);
$str = str_replace("update","",$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("declare","",$str);
$str = str_replace("select","",$str);
$str = str_replace("create","",$str);
$str = str_replace("delete","",$str);
$str = str_replace("insert","",$str);
$str = str_replace("'","",$str);
$str = str_replace(""","",$str);
$str = str_replace(" ","",$str);
$str = str_replace("or","",$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注入跟過濾問題

用著個過濾傳過來的值,這兩個用之前先判斷是否開啟了
get_magic_quotes_gpc();沒有開啟的話用以下兩個都可以過濾
mysql_real_escape_string();一般用於sql語句
addslashes();
例如:
if (!get_magic_quotes_gpc()) {
$lastname = addslashes($_POST[‘lastname’]);
//或者mysql_real_escape_string($_POST[‘lastname’])
} else {
$lastname = $_POST[‘lastname’];
}
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved