<?php//security.php
/*** @author zhengwei* @copyright 2007*//*
函数名称:inject_check()
函数作用:检测提交的值是不是含有SQL注射的字符,防止注射,保护服务器安全
参  数:$sql_str: 提交的变量
返 回 值:返回检测结果,ture or false
函数作者:heiyeluren
*/
function inject_check($sql_str) {  return eregi('select|insert|update|delete|\'|\/\*|\*|\.\.\/|\.\/|union|into|load_file|outfile', $sql_str);    // 进行过滤
}  /*
函数名称:verify_id()
函数作用:校验提交的ID类值是否合法
参  数:$id: 提交的ID值
返 回 值:返回处理后的ID
函数作者:heiyeluren
*/
function verify_id($id=null) {  if (!$id) { exit('没有提交参数!'); }    // 是否为空判断  elseif (inject_check($id)) { exit('提交的参数非法!'); }    // 注射判断  elseif (!is_numeric($id)) { exit('提交的参数非法!'); }    // 数字判断  $id = intval($id);    // 整型化  return  $id;
}  /*
函数名称:str_check()
函数作用:对提交的字符串进行过滤
参  数:$var: 要处理的字符串
返 回 值:返回过滤后的字符串
函数作者:heiyeluren
*/
function str_check( $str ) {  if (!get_magic_quotes_gpc()) {    // 判断magic_quotes_gpc是否打开  $str = addslashes($str);    // 进行过滤
  }  $str = str_replace("_", "\_", $str);    // 把 '_'过滤掉  $str = str_replace("%", "\%", $str);    // 把 '%'过滤掉  return $str;
}  /*
函数名称:post_check()
函数作用:对提交的编辑内容进行处理
参  数:$post: 要提交的内容
返 回 值:$post: 返回过滤后的内容
函数作者:heiyeluren
*/
function post_check($post) {  if (!get_magic_quotes_gpc()) {    // 判断magic_quotes_gpc是否为打开  $post = addslashes($post);    // 进行magic_quotes_gpc没有打开的情况对提交数据的过滤
  }  $post = str_replace("_", "\_", $post);    // 把 '_'过滤掉  $post = str_replace("%", "\%", $post);    // 把 '%'过滤掉  $post = nl2br($post);    // 回车转换  $post = htmlspecialchars($post);    // html标记转换  return $post;
}  foreach ($_POST as $post_key=>$post_var)
{if (is_numeric($post_var)) {$post[strtolower($post_key)] = get_int($post_var);} else {$post[strtolower($post_key)] = get_str($post_var);}
}/* 过滤函数 */
//整型过滤函数
function get_int($number)
{return intval($number);
}
//字符串型过滤函数
function get_str($string)
{if (!get_magic_quotes_gpc()) {return addslashes($string);}return $string;
}?> 

转载于:https://www.cnblogs.com/hubing/p/3467590.html

php对提交数据的验证相关推荐

  1. php判断post是否xss,PHP实现表单提交数据的验证处理功能【防SQL注入和XSS攻击等】...

    本文实例讲述了PHP实现表单提交数据的验证处理功能.分享给大家供大家参考,具体如下: 防XSS攻击代码: /** * 安全过滤函数 * * @param $string * @return strin ...

  2. 用javascript写一个简单的登录表单,包含用户名、密码和手机号码。提交数据时验证用户名、密码和手机号输入格式。

    题目:写一个用于登录的表单,包含用户名.密码和手机号码.提交数据的时候,要求验证: 1. 用户名必须输入汉字: 2. 密码总共6位,前2位为字母,后4位为数字: 3. 手机号码符合中国大陆手机号码格式 ...

  3. Silverlight实例教程 - Validation用户提交数据验证捕获

    在以往的Validation系列中,介绍了四种Silverlight验证机制: 基本异常验证机制: DataAnnotation验证机制: IDataErrorInfo客户端同步验证机制: INoti ...

  4. 手机端系统提交数据的创建时间验证的问题

    今天查看系统时,发现手机端系统提交的数据中存在一些日期特别离谱的数据.比如创建时间为1978年和2019年的数据都出现了. 果真是穿越了半个世纪了.于是我马上将问题提交出来,安排同事处理,并分析产生数 ...

  5. ASP.NET MVC 第三章 异步提交数据

    好长时间都没写文章了本来不准备在写文章了,但是我又为什么今天发表文章咧,第一是为了我自己对技术的认识.第二是为了新手不知道怎么去学习MVC写次系列文章. 废话结束吧,接下来我们看看怎么异步实现提交数据 ...

  6. ajax提交到mysql_利用ajax的方式来提交数据到后台数据库及交互功能

    怎么样用ajax来提交数据到后台数据库,并完成交互呢????? 一.当我们在验证表单的时候,为了阻止把错误的也发送到服务器,我们通常这样设置: $(function(){ var isusername ...

  7. php ci提交表单验证,ci表单验证代码

    概述 这是只考虑php对表单数据的接收处理.至于js部分以前会结合validate来讲解下 在解释 CodeIgniter 的数据验证处理之前,让我们先描述一下一般的情况: 一个表单显示了. 你填写并 ...

  8. C# HttpWebRequest提交数据方式

    HttpWebRequest和HttpWebResponse类是用于发送和接收HTTP数据的最好选择.它们支持一系列有用的属性.这两个类位 于System.Net命名空间,默认情况下这个类对于控制台程 ...

  9. php 当我添加数据成功后跳到首页 为什么刷新还会增加数据,使用post提交数据之后,有错误,页面刷新之后,想保持原有值...

    如题,我使用的ecmall模板 *{$lang.user_name}: {$lang.user_name_desc}{$lang.checking} 回复讨论(解决方案) 想用 $smarty.pos ...

最新文章

  1. __cplusplus与extern C
  2. idea springmvc_IDEA搭建SSM(spring+springmvc+mybatis)Maven项目的入门案例
  3. JavaScript parseInt() 函数
  4. python 生成器 generator
  5. 快速排序——三种划分方式
  6. 无烟会议室:CMMI vs. Scrum vs. XP(QCon 2010 感受)
  7. 从零玩转Webpack4+实现原理笔记(一)
  8. MFS 高可用存储分布式文件系统
  9. oracle下载历史版本,ORACLE老版本下载地址
  10. 控制~李雅普诺夫稳定性
  11. CMMI认证难度大吗?
  12. 统计学和算法相关的基础知识(持续更新)
  13. 基于Kinect 2.0深度图像的快速体积测量
  14. 计算机重装系统知识,想学重装系统要怎么做?重难点知识讲解,零基础照样能够装系统!...
  15. 2021-09-252021年中式烹调师(中级)考试技巧及中式烹调师(中级)证考试
  16. su su- sudo
  17. 开源!MatrixBench:实时物联网场景的数据压测“兵法秘籍”
  18. 计算机服务用什么打开,bonjour是什么软件_在win7电脑中打开itunes程序却提示bonjour服务已被禁用怎么办?...
  19. Python 技巧篇-pip卸载python库实例演示,查看pip命令大全方法
  20. 简单的思维导图怎么画

热门文章

  1. [译]ECMAScript:ES.next和ES6以及ES Harmony之间的区别
  2. 职场减压妙计:主动降职
  3. 中国移动短信网关CMPP3.0 C#源代码:使用示例
  4. 更换jdk Error:could not open '...jvm.cfg'解决方法
  5. aio 爬虫,去重,入库
  6. kubernetes认证,对接第三方认证系统,对接github认证
  7. Hadoop MapReduce概念学习系列之map并发任务数和reduce并发任务数的原理和代码实现(十八)...
  8. Android4.0源码Launcher启动流程分析【android源码Launcher系列一】
  9. hibernate 初学 第一个例子
  10. lsnrctl 与 tnsnames.ora 的联系