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.MVC的模板标签系统(五)
Sep 05 PHP
php 删除记录实现代码
Mar 12 PHP
用Zend Studio+PHPnow+Zend Debugger搭建PHP服务器调试环境步骤
Jan 19 PHP
PHP APC缓存配置、使用详解
Mar 06 PHP
ThinkPHP中的关联模型注意点
Jun 16 PHP
PHP文件锁定写入实例解析
Jul 14 PHP
php上传文件并存储到mysql数据库的方法
Mar 16 PHP
使用PHP接受文件并获得其后缀名的方法
Aug 05 PHP
PHP后期静态绑定之self::限制实例分析
Dec 21 PHP
PHP+百度AI OCR文字识别实现了图片的文字识别功能
May 08 PHP
Laravel创建数据库表结构的例子
Oct 09 PHP
如何在PHP中使用AES加密算法加密数据
Jun 24 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
ThinkPHP结合ajax、Mysql实现的客户端通信功能代码示例
2014/06/23 PHP
php的GD库imagettftext函数解决中文乱码问题
2015/01/24 PHP
php支持中文字符串分割的函数
2015/05/28 PHP
CI框架数据库查询缓存优化的方法
2016/11/21 PHP
ExtJS 2.0实用简明教程 之ExtJS版的Hello
2009/04/29 Javascript
网页中返回顶部代码(多种方法)另附注释说明
2013/04/24 Javascript
Jquery实现网页跳转或用命令打开指定网页的解决方法
2013/07/09 Javascript
脚本合并提升javascript性能示例
2014/02/24 Javascript
JavaScript实现算术平方根算法-代码超简单
2015/09/11 Javascript
Bootstrap自定义文件上传下载样式
2016/05/26 Javascript
vue.js实现条件渲染的实例代码
2017/06/22 Javascript
js学习总结_轮播图之渐隐渐现版(实例讲解)
2017/07/17 Javascript
JavaScript引用类型Object常见用法实例分析
2018/08/08 Javascript
vuex提交state&&实时监听state数据的改变方法
2018/09/16 Javascript
webstorm中配置Eslint的两种方式及差异比较详解
2018/10/19 Javascript
vue语法自动转typescript(解放双手)
2019/09/18 Javascript
layer插件实现在弹出层中弹出一警告提示并关闭弹出层的方法
2019/09/24 Javascript
jquery简易手风琴插件的封装
2020/10/13 jQuery
Python内置数据类型详解
2014/08/18 Python
python处理PHP数组文本文件实例
2014/09/18 Python
浅谈Python peewee 使用经验
2017/10/20 Python
使用pandas中的DataFrame数据绘制柱状图的方法
2018/04/10 Python
python 中xpath爬虫实例详解
2019/08/26 Python
阿迪达斯法国官方网站:adidas法国
2018/03/20 全球购物
瑞士隐形眼镜和护理产品网上商店:Linsenklick
2019/10/21 全球购物
Booking.com德国:预订最好的酒店和住宿
2020/02/16 全球购物
审核会计岗位职责
2013/11/08 职场文书
学年自我鉴定
2014/01/16 职场文书
《珍珠泉》教学反思
2014/02/20 职场文书
《散步》教学反思
2014/03/02 职场文书
基石观后感
2015/06/12 职场文书
网吧员工管理制度
2015/08/05 职场文书
python 逐步回归算法
2021/04/06 Python
vue引入Excel表格插件的方法
2021/04/28 Vue.js
浅谈tf.train.Saver()与tf.train.import_meta_graph的要点
2021/05/26 Python
JS前端轻量fabric.js系列之画布初始化
2022/08/05 Javascript