php 对输入信息的进行安全过滤的函数代码


Posted in PHP onJune 29, 2012
// define constannts for input reading 
define('INPUT_GET', 0x0101); 
define('INPUT_POST', 0x0102); 
define('INPUT_GPC', 0x0103); /** 
* Read input value and convert it for internal use 
* Performs stripslashes() and charset conversion if necessary 
* 
* @param string Field name to read 
* @param int Source to get value from (GPC) 
* @param boolean Allow HTML tags in field value 
* @param string Charset to convert into 
* @return string Field value or NULL if not available 
*/ 
function get_input_value($fname, $source, $allow_html=FALSE, $charset=NULL) { 
$value = NULL; 
if ($source == INPUT_GET && isset($_GET[$fname])) 
$value = $_GET[$fname]; 
else if ($source == INPUT_POST && isset($_POST[$fname])) 
$value = $_POST[$fname]; 
else if ($source == INPUT_GPC) { 
if (isset($_POST[$fname])) 
$value = $_POST[$fname]; 
else if (isset($_GET[$fname])) 
$value = $_GET[$fname]; 
else if (isset($_COOKIE[$fname])) 
$value = $_COOKIE[$fname]; 
} 
if (empty($value)) 
return $value; 
// strip single quotes if magic_quotes_sybase is enabled 
if (ini_get('magic_quotes_sybase')) 
$value = str_replace("''", "'", $value); 
// strip slashes if magic_quotes enabled 
else if (get_magic_quotes_gpc() || get_magic_quotes_runtime()) 
$value = stripslashes($value); 
// remove HTML tags if not allowed 
if (!$allow_html) 
$value = strip_tags($value); 
// convert to internal charset 
return $value; 
}

用法:get_input_value('_uid', INPUT_GET)
PHP 相关文章推荐
php简单封装了一些常用JS操作
Feb 25 PHP
PHP在字符串中查找指定字符串并删除的代码
Oct 02 PHP
一贴学会PHP 新手入门教程
Aug 03 PHP
PHP Zip解压 文件在线解压缩的函数代码
May 26 PHP
在wamp集成环境下升级php版本(实现方法)
Jul 01 PHP
采用header定义为文件然后readfile下载(隐藏下载地址)
Jan 31 PHP
php 使用array函数实现分页
Feb 13 PHP
用HTML/JS/PHP方式实现页面延时跳转的简单实例
Jul 18 PHP
php redis实现文章发布系统(用户投票系统)
Mar 04 PHP
PHP单例模式与工厂模式详解
Aug 29 PHP
php单元测试phpunit入门实例教程
Nov 17 PHP
PHP rsa加密解密算法原理解析
Dec 09 PHP
PHP删除数组中的特定元素的代码
Jun 28 #PHP
PHP安全性漫谈
Jun 28 #PHP
PHP连接SQLSERVER 注意事项(附dll文件下载)
Jun 28 #PHP
深入了解 register_globals (附register_globals=off 网站打不开的解决方法)
Jun 27 #PHP
php数组中删除元素的实现代码
Jun 22 #PHP
php数据结构与算法(PHP描述) 查找与二分法查找
Jun 21 #PHP
通过PHP的内置函数,通过DES算法对数据加密和解密
Jun 21 #PHP
You might like
php 变量定义方法
2009/06/14 PHP
php常用hash加密函数
2014/11/22 PHP
php实现图片局部打马赛克的方法
2015/02/11 PHP
分享PHP函数实现数字与文字分页代码
2015/07/28 PHP
php监测数据是否成功插入到Mysql数据库的方法
2016/11/25 PHP
详解如何实现Laravel的服务容器的方法示例
2019/04/15 PHP
通过实例解析PHP数据类型转换方法
2020/07/11 PHP
几个javascript操作word的参考代码
2009/10/26 Javascript
javascript轻松实现当鼠标移开时已弹出子菜单自动消失
2013/12/29 Javascript
ajaxFileUpload.js插件支持多文件上传的方法
2014/09/02 Javascript
JQuery插件jcarousellite的参数中文说明
2015/05/11 Javascript
浅谈js 闭包引起的内存泄露问题
2015/06/22 Javascript
jquery实现点击其他区域时隐藏下拉div和遮罩层的方法
2015/12/23 Javascript
在其他地方你学不到的jQuery小贴士和技巧(欢迎收藏)
2016/01/20 Javascript
详解在Angular项目中添加插件ng-bootstrap
2017/07/04 Javascript
ES6的循环与可迭代对象示例详解
2021/01/31 Javascript
python实现的各种排序算法代码
2013/03/04 Python
对Python的Django框架中的项目进行单元测试的方法
2016/04/11 Python
对python中两种列表元素去重函数性能的比较方法
2018/06/29 Python
对python xlrd读取datetime类型数据的方法详解
2018/12/26 Python
Python如何使用内置库matplotlib绘制折线图
2020/02/24 Python
20行Python代码实现视频字符化功能
2020/04/13 Python
python PyAUtoGUI库实现自动化控制鼠标键盘
2020/09/09 Python
详解Python中list[::-1]的几种用法
2020/11/16 Python
Python制作简单的剪刀石头布游戏
2020/12/10 Python
基于HTML5 Canvas 实现弹出框效果
2017/06/05 HTML / CSS
大都会艺术博物馆商店:The Met Store
2018/06/22 全球购物
10条PHP编程习惯
2014/05/26 面试题
请写出char *p与"零值"比较的if语句
2014/09/24 面试题
管理部部长岗位职责
2013/12/05 职场文书
高中的自我鉴定
2013/12/16 职场文书
教师师德考核自我评价
2014/09/13 职场文书
中学生的1000字检讨书
2014/10/11 职场文书
给老婆的检讨书1000字
2015/01/01 职场文书
Redis高并发防止秒杀超卖实战源码解决方案
2021/11/01 Redis
JS前端使用Canvas快速实现手势解锁特效
2022/09/23 Javascript