Get或Post提交值的非法数据处理


Posted in PHP onOctober 09, 2006

Get或Post提交值的非法数据处理 <?php

//********************************************************
//-- 程序名称:StrSwap V1.01
//-- 程序编写:[email]cngift@163.com[/email]
//-- 完成: 2002-8-1
//-- 程序用途:Get或Post提交值的非法数据处理
//-- 备注: 本程序需要加载在所有程序处理前使用,以便自动进行
//-- 程序中使用的变量的替换
//-- 由于发现严重BUG紧急升级
//-- Copyright By cngift ◎ 2002
//********************************************************

class StrSwap{

//当以Get方式提交变量时用于连接变量的连接符
var $GetSplitStr = "&&";
var $TempArray = array();
var $VariableArray = array();

//********************************************************
//-- 程序名称:Main()
//-- 程序用途:本类的默认运行方式
//-- 传入参数:无
//********************************************************

function Main(){

global $REQUEST_METHOD;
if("GET"==$REQUEST_METHOD){

$this->SubGetStrToArray();

}
if("POST"==$REQUEST_METHOD){

$this->SubPostStrToArray();

}

$this->GlobalVariable();

}

//********************************************************
//-- 程序名称:SubGetStrToArray()
//-- 程序用途:当变量以Get方式提交时所调用的方法
//-- 传入参数:无
//********************************************************

function SubGetStrToArray(){

global $QUERY_STRING;
$this->TempArray = explode($this->GetSplitStr,$QUERY_STRING);

for($i=0;$i<sizeof($this->TempArray);$i++){

$temp = explode('=',$this->TempArray[$i]);
$this->VariableArray[$i][0] = $temp[0];
$this->VariableArray[$i][1] = $this->StrReplace($temp[1]);

}

}

//********************************************************
//-- 程序名称:SubPostStrToArray()
//-- 程序用途:当变量以POST方式提交时所调用的方法
//-- 传入参数:无
//********************************************************

function SubPostStrToArray(){

global $_POST;
reset($_POST);
for($i=0;$i<count($_POST);$i++){

$this->VariableArray[$i][0] = key($_POST);
$this->VariableArray[$i][1] = $this->StrReplace($_POST[key($_POST)]);
next($_POST);
}

}

//********************************************************
//-- 程序名称:StrReplace()
//-- 程序用途:替换变量中的非法字符
//-- 传入参数:变量值
//********************************************************

function StrReplace($str){

$str = StripSlashes($str);
$str = str_replace(chr(92),'',$str);
$str = str_replace(chr(47),'',$str);
$str = str_replace(chr(10).chr(13),"<br>",$str);
$str = str_replace('<',"<",$str);
$str = str_replace('>',">",$str);
$str = str_replace(';',";",$str);
$str = str_replace('"',"“",$str);
$str = str_replace("'","‘",$str);
$str = str_replace(" "," ",$str);
$str = str_replace("/**/"," ",$str);

return trim($str);

}

//********************************************************
//-- 程序名称:GlobalVariable()
//-- 程序用途:声明变量为全局变量方便其他程序调用
//-- 传入参数:无
//********************************************************

function GlobalVariable(){

for($i=0;$i<sizeof($this->VariableArray);$i++){

global $$this->VariableArray[$i][0];
${$this->VariableArray[$i][0]} = $this->VariableArray[$i][1];

}

}

}

?>

PHP 相关文章推荐
木翼下载系统中说明的PHP安全配置方法
Jun 16 PHP
Zend的Registry机制的使用说明
May 02 PHP
PHP导出EXCEL快速开发指南--PHPEXCEL的使用详解
Jun 03 PHP
php 获取本地IP代码
Jun 23 PHP
深入apache配置文件httpd.conf的部分参数说明
Jun 28 PHP
PDO防注入原理分析以及使用PDO的注意事项总结
Oct 23 PHP
php实现zip文件解压操作
Nov 03 PHP
win7安装php框架Yii的方法
Jan 25 PHP
今天你说520了吗?不仅有php表白书还有java表白神器
May 20 PHP
Yii2 RESTful中api的使用及开发实例详解
Jul 06 PHP
thinkPHP内置字符串截取函数用法详解
Nov 15 PHP
PHP封装的XML简单操作类完整实例
Nov 13 PHP
用Socket发送电子邮件
Oct 09 #PHP
编写自己的php扩展函数
Oct 09 #PHP
PHP输出控制功能在简繁体转换中的应用
Oct 09 #PHP
PHP 中执行系统外部命令
Oct 09 #PHP
PHP实现文件安全下载
Oct 09 #PHP
PHP - Html Transfer Code
Oct 09 #PHP
关于PHP中操作MySQL数据库的一些要注意的问题
Oct 09 #PHP
You might like
收音机频率指针指示不准确和灵敏度低问题
2021/03/02 无线电
ASP和PHP都是可以删除自身的
2007/04/09 PHP
Godaddy空间Zend Optimizer升级方法
2010/05/10 PHP
PHP sprintf()函数用例解析
2011/05/18 PHP
for循环连续求和、九九乘法表代码
2012/02/20 PHP
CI框架开发新浪微博登录接口源码完整版
2014/05/28 PHP
PHPStrom中实用的功能和快捷键大全
2015/09/23 PHP
CI框架无限级分类+递归的实现代码
2016/11/01 PHP
jQuery bxCarousel实现图片滚动切换效果示例代码
2013/05/15 Javascript
鼠标经过显示二级菜单js特效
2013/08/13 Javascript
解决bootstrap导航栏navbar在IE8上存在缺陷的方法
2016/07/01 Javascript
使用json来定义函数,在里面可以定义多个函数的实现方法
2016/10/28 Javascript
Javascript 使用ajax与C#获取文件大小实例详解
2017/01/13 Javascript
JS+HTML5 canvas绘制验证码示例
2018/12/05 Javascript
vue+element+Java实现批量删除功能
2019/04/08 Javascript
JS正则表达式封装与使用操作示例
2019/05/15 Javascript
linux环境下安装pyramid和新建项目的步骤
2013/11/27 Python
详解Python网络爬虫功能的基本写法
2016/01/28 Python
Python环境变量设置方法
2016/08/28 Python
Python 专题四 文件基础知识
2017/03/20 Python
用virtualenv建立多个Python独立虚拟开发环境
2017/07/06 Python
Python学习pygal绘制线图代码分享
2017/12/09 Python
python 爬虫一键爬取 淘宝天猫宝贝页面主图颜色图和详情图的教程
2018/05/22 Python
python和pygame实现简单俄罗斯方块游戏
2021/02/19 Python
Python基于matplotlib画箱体图检验异常值操作示例【附xls数据文件下载】
2019/01/07 Python
使用python将excel数据导入数据库过程详解
2019/08/27 Python
python实现AHP算法的方法实例(层次分析法)
2020/09/09 Python
基于Python-turtle库绘制路飞的草帽骷髅旗、美国队长的盾牌、高达的源码
2021/02/18 Python
韩国邮政旗下生鲜食品网上超市:epost
2016/08/27 全球购物
长青弘远的面试题
2012/06/09 面试题
市政工程技术专业自荐书
2014/07/06 职场文书
英文演讲稿开场白
2014/08/25 职场文书
婚礼庆典答谢词
2015/01/20 职场文书
市场部岗位职责范本
2015/04/15 职场文书
城镇居民医疗保险工作总结
2015/08/10 职场文书
导游词之澳门玫瑰圣母堂
2019/12/03 职场文书