电脑技巧.图片新闻 | 用户注册 | 用户中心 | 发表文章 | 留言簿 | 扫一扫手机阅读
  |繁体中文|  RSS订阅 |极速版  |手机访问  
电脑常用技巧,PC Skill,电脑知识,组装维修,经验,资料精华宝库,HUGESKY CMS官网,鸿天全站,HUGESKY-php过滤form表单提交的危险字符几个代码
本站申明:
本站尽量纯净无广告,提供交流学习类共享资料。[广告投放说明] [联系]
  • 首 页
  • 电脑知识
  • 应用技巧
  • 组装技巧
  • 维修技巧
  • 网络技巧
  • 组网通信
  • 办公技巧
  • 技巧视频
  • 编程技巧
  • 防毒技巧
  • 博客圈
会员注册关闭
帐号: 密码: 验证码: 点击显示验证码 记住
电脑技巧 -> 编程技巧 -> PHP技巧

php过滤form表单提交的危险字符几个代码

作者:未知来源:网络收集 整理日期:2019-09-10
推荐指数: 点击:807   文字大小: 加入收藏夹


 //php过滤form表单提交的危险字符
//处理提交的数据
function htmldecode($str) {
 if (empty ( $str ) || "" == $str) {
 return "";
 }
 
 $str = strip_tags ( $str );
 $str = htmlspecialchars ( $str );
 $str = nl2br ( $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 );
 $str = str_replace ( "^", "", $str );
 $str = str_replace ( "select", "", $str );
 $str = str_replace ( "join", "", $str );
 $str = str_replace ( "union", "", $str );
 $str = str_replace ( "where", "", $str );
 $str = str_replace ( "insert", "", $str );
 $str = str_replace ( "delete", "", $str );
 $str = str_replace ( "update", "", $str );
 $str = str_replace ( "like", "", $str );
 $str = str_replace ( "drop", "", $str );
 $str = str_replace ( "create", "", $str );
 $str = str_replace ( "modify", "", $str );
 $str = str_replace ( "rename", "", $str );
 $str = str_replace ( "alter", "", $str );
 $str = str_replace ( "cast", "", $str );
 
 $farr = array ("//s+/", //过滤多余的空白
"/<(//?)(img|script|i?frame|style|html|body|title|link|meta|/?|/%)([^>]*?)>/isU", //过滤 <script 防止引入恶

意内容或恶意代码,如果不需要插入flash等,还可以加入<object的过滤
"/(<[^>]*)on[a-zA-Z]+/s*=([^>]*>)/isU" )//过滤javascript的on事件
;
 $tarr = array (" ", "", //如果要直接清除不安全的标签,这里可以留空
"" );
 return $str;
}


另外:
function uhtml($str)  
{  
    $farr = array(  
        "/\s+/", //过滤多余空白  
         //过滤 <script>等可能引入恶意内容或恶意改变显示布局的代码,如果不需要插入flash等,还可以加入<object>

的过滤  
        "/<(\/?)(script|i?frame|style|html|body|title|link|meta|\?|\%)([^>]*?)>/isU", 
        "/(<[^>]*)on[a-zA-Z]+\s*=([^>]*>)/isU",//过滤javascript的on事件  
   );  
   $tarr = array(  
        " ",  
        "<\1\2\3>",//如果要直接清除不安全的标签,这里可以留空  
        "\1\2",  
   );  
  $str = preg_replace( $farr,$tarr,$str);  
   return $str;  
}

======================================
php获取前端提交数据类:支持危险数据过滤
代码:
/**
* @desc:获取前端提交的数据,支持数据过滤
* @author [Lee] <[<complet@163.com>]>
*/
class getrequest{
/*
 @desc:内部函数:过滤危险数据
 */
private function safetydata($data){
    foreach($data as $k=>$v){
        if(is_array($v)){
            $data[$k] = $this->safetydata($v);
        }else{
            $tmp = trim($v);
            $tmp = addslashes($tmp);
            $data[$k] = $tmp;
        }
    }
    return $data;
}
/*
 @desc:判断前端传入方式,转换成能用数据
 */
public function getrequestdata(){
    $data;
    $ret;
    $contenttype = strtolower($_SERVER['CONTENT_TYPE']);
    $method = strtolower($_SERVER['REQUEST_METHOD']);
    if($contenttype == 'application/json'){
        $data = file_get_contents('php://input');
        $data = json_decode($data,true);
    }elseif(in_array($contenttype,array('application/x-www-form-urlencoded','multipart/form-data')) || 

$method == 'post'){
        $data = $_POST;
    }elseif(in_array($contenttype,array('application/x-www-form-urlencoded','multipart/form-data')) || 

$method == 'get'){
        $data = $_GET;
    }else{
        parse_str(file_get_contents('php://input'),$data);
    }
    $ret = $this->safetydata($data);
    return $ret;
}
}
用法:
$getrequest = new getrequest();
$data = $getrequest->getrequestdata();
var_dump($data);

获得更多 -> 编程技巧 -> PHP技巧
技术支持

责任编辑: webmaster >>> 百度上搜索  谷歌上搜索

hugesky
点击复制本连接 (http://www.hugesky.com/showarticle.php?id=6875)

发送到邮件  转换为打印版本  投 发表文章  报 侵权报告  关 关闭窗口
 很好的危险字符过滤PHP代码
 云虚拟主机与传统的虚拟主机选购技巧

>>> 相关资讯:

  • . php实现url伪静化全过程详解
  • . PHP实现同步远程Mysql
  • . 合格的php程序员标准
  • . 代码片段:国家代码缩写
  • . php+smarty生成静态页
  • . FCKeditor编辑器内出现多余文字换行问
  • . PHP得到当前页和上一页的地址
  • . PHP程序员最常犯的11个MySQL错误
  • . 只给文章第一个关键词自动加链接
  • . 介绍几款浏览器兼容性测试工具
【声明】:
以上文章或资料除注明为电脑技巧原创或编辑整理外,均为网络收集整理或网友推荐。以上内容以共享、参考、研究为目的,不存在任何商业目的。
未注明作者或出处的文章,可能资料来源不规范。如有涉及版权请给予及时联系更正或予以删除。
评论:(开放)

  网友评论: 评  
以下网友评论只代表网友个人观点,不代表本站观点
  发表评论:(匿名用户不能发表评论! 注册 登陆)
昵称: 验证码:
评分:
5 4 3 2 1
内容:
  请文明参与讨论,禁止漫骂攻击。
 
·用户发表意见仅代表其个人意见,并且承担一切因发表内容引起的纠纷和责任.
·本站管理人员有权在不通知用户的情况下删除不符合规定的评论信息或留做证据.
·请客观的评价您所看到的资讯,提倡就事论事,杜绝漫骂和人身攻击等不文明行为.
内容搜索
    • 站内搜索
热门资讯
  • 电脑快捷键全都在这了!电脑技巧...
  • 图说最常用的10个电脑技巧
  • 别说你不会?这9个电脑技巧你必须...
  • Win7解决C盘占用空间大的方法
  • 网银密码设置小技巧
  • win7安装AHCI驱动
  • 平板电脑选购六大要点
  • [推荐]五步搞定电脑网络安全 五步...
  • 系统自带的最不起眼但又是最强的...
  • 上班族必懂的电脑技能技巧
推荐信息
开启模板:NEWSKY -关于版权 - 隐私保护 - 联系我们 - 网站地图 - 会员列表 - 加入收藏 - 返回顶部

我问佛:如何才能如你般睿智? 佛曰:佛是过来人,人是未来佛。
部分资源收集于互联网并遵循 署名-非商业性使用-相同方式共享3.0共享,尽量署名原创。
据《信息网络传播权保护条例》 如侵犯您的权利,请联系webmaster(at)hugesky.com删除。
Power By HugeSky.Com

Copyright© www.hugesky.com
Powered by HUGESKY CMS 7.1.1.1080918 professional licensed