博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
前端与后端TP的数据校验
阅读量:6029 次
发布时间:2019-06-20

本文共 1442 字,大约阅读时间需要 4 分钟。

前后端数据验证的区别

  • 前端数据验证(一般指的是表单验证):为了提升用户体验,减少与后端的交互;但容易被他人修改或删除,甚至用其他抓包软件跳过验证直接向后端发送数据,安全性低

  • 后端数据验证:为了保证数据的正确性,不容易被他人修改,安全性高,所以即使没有前端验证,也必须要有后端验证。(必须的)

前端验证

  • 自己通过JS手动实现

  • 使用jquery validate插件,详情可以参考

TP的后端数据验证——自动验证

  • TP已经实现了对请求数据进行验证的功能,自动验证是TP模型层提供的一种数据验证方法

  • 自动验证的使用

1、在模型层中定义验证规则      protected $_validate = array(        array('username', 'require', '用户名不能为空'),        array('username', '/^\w{4,12}$/', '用户名或密码错误', self::EXISTS_VALIDATE, 'regex'),        array('password', 'require', '密码不能为空'),        array('password', '/^[a-zA-Z0-9]{6,18}$/', '用户名或密码错误', self::EXISTS_VALIDATE, 'regex'),        array('repassword', 'password', '用户名或密码错误', self::EXISTS_VALIDATE, 'confirm'),        array('email', 'email', 'Email格式不正确!'),        array('hobby', '1,2,3', '请选择一项爱好!',self::EXISTS_VALIDATE, 'in'),      );         2、使用create()方法创建数据对象,使用这个数据对象与数据库通讯      $postData = $this->create($postData);      //如果$postData为false,说明验证不通过,请调用$this->getError()获取错误信息      //如果验证通过,$postData就是一个原本的数组

PHP中复选框、单选框、下拉列表的注意事项

  • 复选框

    checkbox选中了的才会有值;未选中的则没有值(根本请求不会发出checkbox的name)

             

    全选:

    $_POST['chk']为array(0=>'0',1=>'1',2=>'2',3=>'3');

    只选择value=1和3的

    $_POST['chk']为array(1=>'1',3=>'3');

    注意:在给checkBox命名时,必须要加"[]" ,但是在接收时不能加"[]" 才能得到值!

  • 单选框

    radio选中了的才会有值;未选中的则没有值(根本请求不会发出radio的name)

    类型1   类型2   类型3   类型4   类型5

    注意:每个radio的name值必须相同,获取时$_POST['catetype']

  • 下拉列表

       注意:第一个“请选择”的value一定要写,否则默认值就是'--请选择--'

转载地址:http://pfkhx.baihongyu.com/

你可能感兴趣的文章
Linq中两种更新操作
查看>>
Linux下Dialog+Shell三层目录专业规范跳板机脚本
查看>>
Eslint中no-undef的检查报错
查看>>
Spring源码解析 - AbstractBeanFactory 实现接口与父类分析
查看>>
the archive which is referenced by ...问题解决方案
查看>>
西部开源学习笔记BOOK2-《unit 4》
查看>>
C++下的DLL编程入门
查看>>
oracle中怎样查询用户权限
查看>>
s5pv210运行裸机程序的方法之在SDRAM(DDR2)中运行
查看>>
吊炸天的 PHP 7 ,你值得拥有
查看>>
java循环练习:水仙花数
查看>>
HTTPS 接入优化建议
查看>>
线程安全与可重入函数的区别及联系
查看>>
python-简单测试wsgi
查看>>
C语言 飞机
查看>>
三台主机分别部署LAMP
查看>>
驱动学习之led-class.c源码分析
查看>>
Linux 6.8 root密码丢失找回
查看>>
『中级篇』docker之wordpress容器SSL(番外篇)(78)
查看>>
『高级篇』docker之DockerSwarm的集群环境搭建(28)
查看>>