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 使用post,get的一种简洁方式
Apr 25 PHP
PHP中英混合字符串截取函数代码
Jul 17 PHP
php数组函数序列之rsort() - 对数组的元素值进行降序排序
Nov 02 PHP
php二分查找二种实现示例
Mar 12 PHP
PDO防注入原理分析以及使用PDO的注意事项总结
Oct 23 PHP
PHP遍历目录函数opendir()、readdir()、closedir()、rewinddir()总结
Nov 18 PHP
php实现redis数据库指定库号迁移的方法
Jan 14 PHP
详解PHP实现异步调用的4种方法
Mar 14 PHP
php原生导出excel文件的两种方法(推荐)
Nov 19 PHP
php支付宝系列之电脑网站支付
May 30 PHP
yii2中关于加密解密的那些事儿
Jun 12 PHP
php输出控制函数和输出函数生成静态页面
Jun 27 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
百度地图API应用之获取用户的具体位置
2014/06/10 PHP
php数字运算验证码的实现代码
2015/07/30 PHP
学习php设计模式 php实现工厂模式(factory)
2015/12/07 PHP
JavaScript使用RegExp进行正则匹配的方法
2015/07/11 Javascript
jquery实现可点击伸缩与展开的菜单效果代码
2015/08/31 Javascript
JavaScript Length 属性的总结
2015/11/02 Javascript
Node.js+Express配置入门教程
2016/05/19 Javascript
jQuery easyui刷新当前tabs的方法
2016/09/23 Javascript
vue.js框架实现表单排序和分页效果
2017/08/09 Javascript
JavaScript实现五子棋小游戏
2020/10/26 Javascript
用python分割TXT文件成4K的TXT文件
2009/05/23 Python
从零学Python之入门(五)缩进和选择
2014/05/27 Python
Python贪心算法实例小结
2018/04/22 Python
python实现pdf转换成word/txt纯文本文件
2018/06/07 Python
详解基于django实现的webssh简单例子
2018/07/17 Python
python实现QQ邮箱/163邮箱的邮件发送
2019/01/22 Python
python机器学习包mlxtend的安装和配置详解
2019/08/21 Python
python之array赋值技巧分享
2019/11/28 Python
Python 操作 PostgreSQL 数据库示例【连接、增删改查等】
2020/04/21 Python
Keras实现DenseNet结构操作
2020/07/06 Python
Python如何使用27行代码绘制星星图
2020/07/20 Python
HTC VIVE美国官网:VR虚拟现实眼镜
2018/02/13 全球购物
研究生毕业鉴定
2014/01/29 职场文书
职工运动会邀请函
2014/02/02 职场文书
企业内部培训方案
2014/02/04 职场文书
带薪年假请假条
2014/02/04 职场文书
人力资源职位说明书
2014/07/29 职场文书
教师党员自我剖析材料
2014/09/29 职场文书
党员群众路线自我剖析材料
2014/10/06 职场文书
校园文化艺术节宣传标语
2014/10/09 职场文书
辅导员学期工作总结
2015/08/14 职场文书
2016年9月份红领巾广播稿
2015/12/21 职场文书
血轮眼轮回眼特效 html+css
2021/03/31 HTML / CSS
Sql-Server数据库单表查询 4.3实验课
2021/04/05 SQL Server
关于HTML编码导致的乱码问题
2021/09/04 HTML / CSS
Python matplotlib 利用随机函数生成变化图形
2022/04/26 Python