thinkphp自动验证相关
来源:互联网 发布:淘宝店代销钱怎么算 编辑:程序博客网 时间:2024/04/23 19:56
protected $_validate = array( //邮箱验证,格式,必须 array('email','require','邮箱必须!'), array('email','email','邮箱格式不正确!'), //昵称验证,格式,必须,唯一 array('nickname','require','昵称必须!'), array('nickname','','昵称已经存在!',0,'unique',3), array('nickname','/^[a-zA-Z0-9\_\x{4e00}-\x{9fa5}]{3,15}$/u','昵称不合法!'), //密保问题验证 array('question','require','密保问题必须!'), array('question','/^[a-zA-Z0-9\_\x{4e00}-\x{9fa5}]{3,15}$/u','问题不合法!'), //密保问题答案验证 array('answer','require','密保问题必须!'), array('answer','/^[a-zA-Z0-9\_\x{4e00}-\x{9fa5}]{3,15}$/u','问题不合法!') //array('value',array(1,2,3),'值的范围不正确!',2,'in'), // 当值不为空的时候判断是否在一个范围内 );
以上为自动验证的静态方式的写法,要注意的是:
1.php中文验证方式为
\x{4e00}-\x{9fa5} //不要忘记u参数 小写 表示uttf-8格式验证 这个是关键,如果你的前台是utf-8的话2.现在来说说unique 和最后一个参数,首先说我遇到的问题:
在唯一性一栏 发现无法验证 然后数据库插入失败 原因是,重复插入,也就是说,确实重复了 但是unique 判断失效,经过测试其它的条件是成立的,在这个问题纠结了很久,后来想起是不是因为数据库外键的原因,我这是两个表同时‘插入’,第一个主表没问题,后面的问题就来了,于是我把验证时间改为update时验证,结果惊喜,成功!原来以为真的成功了 后来随便输入测试 发现任意输入都会提示已存在,无奈进入源码探索unique的运作方式看到了这一行代码:
if(!empty($data[$this->getPk()])) { // 完善编辑的时候验证唯一 $map[$this->getPk()] = array('neq',$data[$this->getPk()]); }想起第二个表中是没有加主键的,于是 随便加了一个id主键,测试成功,这次真的成功了,但是至于验证一个字段的值是否已存在为什么要主键,目前还不知道为什么,希望有人可以告知!
0 0
- thinkphp自动验证相关
- thinkphp 自动验证
- thinkphp 验证 自动填充
- ThinkPHP 自动验证
- Thinkphp 自动验证
- Thinkphp自动验证
- thinkphp自动验证
- ThinkPHP 自动验证
- ThinkPHP 自动验证
- thinkphp中的自动验证
- ThinkPHP中自动验证
- thinkPHP 自动验证
- thinkphp自动验证---$_validate
- Thinkphp 模型->自动验证
- thinkphp自动验证
- ThinkPHP自动验证
- thinkphp自动验证BUG问题
- thinkphp 表单自动验证功能
- 使用SGD(Stochastic Gradient Descent)进行大规模机器学习
- 大数据时代的新兴职业
- 印度机构造假SSL证书威胁Gmail安全
- PHP-redis中文文档
- ABAP中的宏
- thinkphp自动验证相关
- 【数据结构与算法】【排序】归并排序的代码实现
- 敏捷完工与发布检查
- Emit with a human face
- Linux kernel panic解决方法
- 如何获取当前操作系统版本号
- 如何实现两个ViewPager的联动
- 怎么把PDF的格式转成PPT
- 日语学习之沪江整理 20141103