表单正则验证及文件上传验证功能

 更新时间:2017年07月03日 16:41:32   投稿:mrr  
表单正则验证主要是用来对表单提交信息的过滤,防止sql注入(比如登录界面),上传的文件也需要进行文件名后缀和大小进行验证,下面是一个简单的表单验证实例代码,需要的的朋友参考下吧

表单正则验证主要是用来对表单提交信息的过滤,防止sql注入(比如登录界面),上传的文件也需要进行文件名后缀和大小进行验证,下面是一个简单的表单验证

 header("Content-type:text/html;charset=utf-8");
 $user = isset($_POST[‘user‘])?$_POST[‘user‘]:null;
 $password = isset($_POST[‘password‘])?$_POST[‘password‘]:null;
 $arr = array(‘png‘,‘gif‘,‘jpg‘);
 $uploads = move_uploaded_file($_FILES[‘face‘][‘tmp_name‘],‘uploads/‘.$_FILES[‘face‘][‘name‘]);
 $file = ‘uploads/‘.$_FILES[‘face‘][‘name‘];
 if($uploads){
   echo ‘上传成功‘;
 }
 if(!preg_match("/^[\x{4e00}-\x{9fa5}]+$/u", $user)){
   //正则检查用户名是否为全汉字组成
   echo "用户名只能由纯汉字组成!";
   die;
 }else if(!preg_match("/^[\x{4e00}-\x{9fa5}A-Za-z0-9_]+$/u",$password)){
   //正则检查密码是否含有非法字符
   echo ‘密码不能包含特殊字符!‘;
   die;
 }else if(!in_array(pathinfo($file, PATHINFO_EXTENSION),$arr)){
   echo "文件格式不正确";
   die;
 }else{
   echo ‘允许注册!‘;
 } 

附常用php正则表达式:

匹配中国邮政编码:[1-9]\d{5}(?!\d)

匹配身份证:\d{15}|\d{18}

匹配ip地址:\d+\.\d+\.\d+\.\d+

匹配网址URL的正则表达式:[a-zA-z]+://[^\s]*

匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

匹配中文字符的正则表达式: [\u4e00-\u9fa5]

函数:

preg_match():第一个参数为正则规则,第二个为被验证的字符串,返回布尔值

preg_replace ():对一个字符串中附和正则规则的字符进行字符替换

以上所述是小编给大家介绍的表单正则验证及文件上传验证功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • 常用正则表达式之密码格式验证大全

    常用正则表达式之密码格式验证大全

    如果密码中只包含数字,那么该密码是非常简单,当然它的安全性也相对较差,下面这篇文章主要给大家介绍了关于常用正则表达式之密码格式验证大全的相关资料,需要的朋友可以参考下
    2022-02-02
  • js正则表达式 匹配两个特定字符间的内容示例

    js正则表达式 匹配两个特定字符间的内容示例

    今天小编就为大家分享一篇js正则表达式 匹配两个特定字符间的内容示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • 关于.*匹配和.*?匹配的区别解析

    关于.*匹配和.*?匹配的区别解析

    这篇文章主要介绍了关于.*匹配和.*?匹配的区别,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-08-08
  • 最全的常用正则表达式大全

    最全的常用正则表达式大全

    这篇文章主要为大家分享了最全的常用正则表达式大全,包括校验数字、字符、一些特殊的需求等等,感兴趣的小伙伴们可以参考一下
    2015-12-12
  • 使用正则表达式匹配[***]样式的字符串

    使用正则表达式匹配[***]样式的字符串

    这篇文章主要介绍了使用正则表达式匹配[***]样式的字符串,需要的朋友可以参考下
    2014-05-05
  • python 正则表达式 反斜杠(/)的麻烦和陷阱

    python 正则表达式 反斜杠(/)的麻烦和陷阱

    这里是一点小心得。 由于正则表达式使用反斜杠来转义特殊字符,而python自身处理字符串时,反斜杠也是用于转义字符,这样就产生了一个双重转换的问题
    2009-08-08
  • JS获取网址中指定值的正则函数

    JS获取网址中指定值的正则函数

    这个方法适用于获取GET或者其他SRC参数,需要的朋友可以参考下。
    2012-01-01
  • 正则表达式中的$分组使用示例详解

    正则表达式中的$分组使用示例详解

    正则表达式中的$符号通常用于表示字符串的结束位置,但当你在替换操作或者某些特殊上下文中提到 $ 后跟数字(如 $1, $2, etc.),这并不表示结束位置,而是引用之前正则表达式捕获组的内容,这篇文章主要介绍了正则表达式中的$分组使用示例详解,需要的朋友可以参考下
    2024-05-05
  • 正则表达式中的反向预搜索(下)

    正则表达式中的反向预搜索(下)

    在前面正则表达式中的反向预搜索中,在JavaScript中利用RegExp对象实现了正则表达式反向预搜索的字符串替换功能。
    2009-12-12
  • 使用正则表达式验证域名的教程

    使用正则表达式验证域名的教程

    本教程介绍了如何使用正则表达式验证域名格式,正则表达式确保域名符合基本规则:每个标签只能包含字母、数字和短横线,标签长度限制在1到63个字符之间,且顶级域名必须由字母组成且长度至少为2个字符,感兴趣的朋友一起看看吧
    2024-11-11

最新评论