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模板函数 正则实现代码
Oct 15 PHP
深入array multisort排序原理的详解
Jun 18 PHP
解析如何去掉CodeIgniter URL中的index.php
Jun 25 PHP
php生成静态页面的简单示例
Apr 17 PHP
PHP实现支持SSL连接的SMTP邮件发送类
Mar 05 PHP
php获取系统变量方法小结
May 29 PHP
分享五个PHP7性能优化提升技巧
Dec 07 PHP
thinkphp项目部署到Linux服务器上报错“模板不存在”如何解决
Apr 27 PHP
基于thinkPHP框架实现留言板的方法
Oct 17 PHP
总结PHP内存释放以及垃圾回收
Mar 29 PHP
使用laravel和ECharts实现折线图效果的例子
Oct 09 PHP
关于laravel 子查询 &amp; join的使用
Oct 16 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
成本8450万,票房仅2亿,口碑两极分化,又一部DC电影扑街了
2020/04/09 欧美动漫
php 执行系统命令的方法
2009/07/07 PHP
PHP 读取文件内容代码(txt,js等)
2009/12/06 PHP
解析CI的AJAX分页 另类实现方法
2013/06/27 PHP
php将远程图片保存到本地服务器的实现代码
2015/08/03 PHP
Yii多表联合查询操作详解
2016/06/02 PHP
PHP编程中的Session阻塞问题与解决方法分析
2017/08/07 PHP
原生JavaScript实现连连看游戏(附源码)
2013/11/05 Javascript
javascripit实现密码强度检测代码分享
2013/12/12 Javascript
location.href用法总结(最主要的)
2013/12/27 Javascript
JS扩展方法实例分析
2015/04/15 Javascript
理解jquery事件冒泡
2016/01/03 Javascript
BootStrap文件上传样式超好看【持续更新】
2016/05/10 Javascript
谈一谈bootstrap响应式布局
2016/05/23 Javascript
详解如何在angular2中获取节点
2017/11/23 Javascript
JS 实现分页打印功能
2018/05/16 Javascript
ES6与CommonJS中的模块处理的区别
2018/06/13 Javascript
微信小程序实现自定义底部导航
2020/11/18 Javascript
[02:11]完美世界DOTA2联赛10月28日赛事精彩集锦:来吧展示实力强劲
2020/10/29 DOTA
Python实现的建造者模式示例
2018/08/06 Python
Python 开发工具PyCharm安装教程图文详解(新手必看)
2020/02/28 Python
浅谈Python中的生成器和迭代器
2020/06/19 Python
Windows下Sqlmap环境安装教程详解
2020/08/04 Python
简单html5代码获取地理位置
2014/03/31 HTML / CSS
html5启动原生APP总结
2020/07/03 HTML / CSS
日本最大的彩色隐形眼镜销售网站:CharmColor
2020/09/09 全球购物
什么是GWT的Module
2013/01/20 面试题
工作会议主持词
2014/03/17 职场文书
六年级小学生评语
2014/12/26 职场文书
中学生学习保证书
2015/02/26 职场文书
《合作意向书》怎么写?
2019/08/20 职场文书
Nginx服务器添加Systemd自定义服务过程解析
2021/03/31 Servers
利用Java设置Word文本框中的文字旋转方向的实现方法
2021/06/28 Java/Android
Java 语言中Object 类和System 类详解
2021/07/07 Java/Android
Nginx 配置 HTTPS的详细过程
2022/05/30 Servers
Python数组变形的几种实现方法
2022/05/30 Python