淺談保護(hù)代碼安全,PHP如何進(jìn)行注入_PHP教程
教程Tag:暫無Tag,歡迎添加,賺取U幣!
推薦:解析php+javascript 靜態(tài)化簡單實(shí)例1. php生成js文件: ?php a=array( array('title'='本地新聞1',ln='#'), array('title'='本地新聞2',ln='#'), array('title'='本地新聞3',ln='#') );//實(shí)際操作中可通過數(shù)據(jù)庫得到記錄集數(shù)組 news=' var a=['; //把該數(shù)組轉(zhuǎn)化為javascrīpt形式 for(i=0;icount
我們主要是從兩點(diǎn)出發(fā),因?yàn)槲覀兊墨@取的變量一般都是通過GET或者POST方式提交過來的,那么我們只要對(duì)GET和POST過來的變量進(jìn)行過濾,那么就能夠達(dá)到防止注入的效果。而且我們的PHP真是非常好,已經(jīng)內(nèi)置了$_GET和$_POST兩個(gè)數(shù)組來存儲(chǔ)所有變量,我們要做的工作就是過濾每個(gè)變量就可以了。下面看具體的代碼:
/*
PHP開發(fā)資源網(wǎng) = 全球最大的PHP中文社群 = PHPer的網(wǎng)上家園
*/
/* Author: heiyeluren */
/* 過濾所有GET過來變量 */
foreach ($_GET as $get_key=%26gt;$get_var)
{
if (is_numeric($get_var))
if (is_numeric($get_var)) {
$get[strtolower($get_key)] = get_int($get_var);
} else {
$get[strtolower($get_key)] = get_str($get_var);
}
}
/* 過濾所有POST過來的變量 */
foreach ($_POST as $post_key=%26gt;$post_var)
{
if (is_numeric($post_var)) {
$post[strtolower($post_key)] = get_int($post_var);
} else {
$post[strtolower($post_key)] = get_str($post_var);
}
}
/* 過濾函數(shù) */
//整型過濾函數(shù)
function get_int($number)
{
return intval($number);
}
//字符串型過濾函數(shù)
function get_str($string)
{
if (!get_magic_quotes_gpc()) {
return addslashes($string);
}
return $string;
} a
那么我們把以上代碼放到一個(gè)公共的文件里,比如security.inc.php里面,每個(gè)文件里都include一下這個(gè)文件,那么就能夠給任何一個(gè)程序進(jìn)行提交的所有變量進(jìn)行過濾了,就達(dá)到了我們一勞永逸的效果。
另外,還有一些其他的過濾方法,比如采用我以前使用的關(guān)鍵字過濾的方法:http://dev.csdn.net/article/71/71475.shtm
還可以參考三尺寒冰寫的方法:http://www.fanghei.com/html/2005-06/20050607114008.htm
方法是不同的,但是核心就是為了我們的代碼更加安全。
分享:解析PHP經(jīng)典的給圖片加水印程序如果對(duì)PHP的GD庫比較熟悉,看懂這篇文章一點(diǎn)都不難了! E HTML PUBLIC -//W3C//DTD HTML 4.0 html head titleUntitled/title /head body ?php uptypes=array( 'image/jpg', 'image/jpeg', 'image/png', 'image/pjpeg', 'image/gif',
相關(guān)PHP教程:
- PHPNOW安裝Memcached擴(kuò)展方法詳解
- php記錄頁面代碼執(zhí)行時(shí)間
- PHP中獎(jiǎng)概率的抽獎(jiǎng)算法程序代碼
- apache設(shè)置靜態(tài)文件緩存方法介紹
- php對(duì)圖像的各種處理函數(shù)代碼小結(jié)
- PHP 關(guān)于訪問控制的和運(yùn)算符優(yōu)先級(jí)介紹
- 關(guān)于PHP語言構(gòu)造器介紹
- php/js獲取客戶端mac地址的實(shí)現(xiàn)代碼
- php5.5新數(shù)組函數(shù)array_column使用
- PHP preg_match的匹配多國語言的技巧
- php 中序列化和json使用介紹
- php采集文章中的圖片獲取替換到本地
- 相關(guān)鏈接:
- 教程說明:
PHP教程-淺談保護(hù)代碼安全,PHP如何進(jìn)行注入
。