加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP Yii框架之表单验证规则大全

发布时间:2020-12-13 02:56:51 所属栏目:PHP教程 来源:网络整理
导读:《PHP Yii框架之表单验证规则大全》要点: 本文介绍了PHP Yii框架之表单验证规则大全,希望对您有用。如果有疑问,可以联系我们。 Yii是一个基于组件的高性能PHP框架,用于开发大型Web应用.Yii采用严格的OOP编写,并有着完善的库引用以及全面的教程. PHP编程

《PHP Yii框架之表单验证规则大全》要点:
本文介绍了PHP Yii框架之表单验证规则大全,希望对您有用。如果有疑问,可以联系我们。

Yii是一个基于组件的高性能PHP框架,用于开发大型Web应用.Yii采用严格的OOP编写,并有着完善的库引用以及全面的教程.PHP编程

废话不多说了,直接给大家贴代码了.PHP编程

<?php
class ContactForm extends CFormModel
{
  public $_id;
  public $contact;//联系人
  public $tel;//电话
  public $fax;//传真
  public $zipcode;//邮编
  public $addr;//地址
  public $mobile;//手机
  public $email;//邮箱
  public $website;//网址
  public $qq;//QQ
  public $msn;//MSN
  public function rules()
  {
    return array(
      array('contact','required','on'=>'edit','message'=>'联系人必须填写.'),array('contact','length','min'=>2,'max'=>10,'tooShort'=>'联系人长度请控制在2-10个字符.','tooLong'=>'联系人长度请控制在2-10个字符.'),array('tel','match','pattern' => '/^(d{3}-|d{4}-)(d{8}|d{7})?$/','message' => '请输入正确的电话号码.'),array('fax','message' => '请输入正确的传真号码.'),array('mobile','pattern' => '/^13[0-9]{1}[0-9]{8}$|15[0189]{1}[0-9]{8}$|189[0-9]{8}$/','message' => '请输入正确的手机号码.'),array('email','email','message'=>'邮箱输入有误.'),array('zipcode','message'=>'邮编必须填写.'),'numerical','message'=>'邮编是6位数字.'),'min'=>6,'max'=>6,'tooShort'=>'邮编长度为6位数.','tooLong'=>'邮编长度为6位数.'),array('website','url','message'=>'网址输入有误.'),array('qq','pattern' => '/^[1-9]{1}[0-9]{4,11}$/','message' => '请输入正确的QQ号码.'),array('msn','message'=>'MSN输入有误.'),);
  }
}

完整示例:PHP编程

public $password2;//非数据库的字段,但是在view中需要用到
  public $verify; //手机验证码
  public $fjg; //忘暗号码
  /**
   * 映射数据库表名
   * @return string the associated database table name<br><br>     * www.shouce.ren
   */
  public function tableName()
  {
    return 'adm_user';
  }
  /**
   * 验证规则
   * @return array validation rules for model attributes.
   */
  public function rules()
  {
    // NOTE: you should only define rules for those attributes that
    // will receive user inputs.
    return array(
      //array('mobile_phone,name,status','required'),array('mobile_phone','unique'),//'message' => '该手机号已经存在!'
      array('mobile_phone','pattern' => '/^(13|15|18)[0-9]{9}$/','message' => '请输入正确的经办人手机号码.'),//array('certificate_id','pattern' => '/(.jpg|.gif|.png|d)$/','message' => '请重新选择证书图像并且后缀只能是jpg、gif、png格式.'),array('phone','pattern' => '/^(d{3}-|d{4}-)?(d{8}|d{7})?$/','message' => '请输入正确的座机号码.'),//array('email_address','pattern' => '/^[w-]+(.[w-]+)*@[w-]+(.[w-]+)+$/','message' => '请输入正确的邮箱.'),array('email_address','message'=>'请输入正确的邮箱.'),//验证密码和确认密码
      array("password2","compare","compareAttribute"=>"password","message"=>"两次密码不一致",'on'=>'register'),array("password2",'on'=>'regonter'),array('type,certificate_id,company_type,nationality,yyzz_id,status,level,create_by_id,create_time,update_time','integerOnly'=>true),array('verify','message' => '验证码不正确',array('name,user_type,tuijianren','max'=>20),array('password','max'=>100),array('email_address,business','max'=>50),array('communication_address,money,yhzh,yhmc,industry,company,register_address,yhdh,shangbiao,zhuanli,gongshang','max'=>255),array('role_id','default','setOnEmpty'=>true,'value'=>10),array('shangbiao','value'=>'0,0'),array('zhuanli',array('gongshang','value'=>'123456'),/*验证码*/
      array('verify','checkVerify','checkemail',//     array('certificate_id','file','allowEmpty'=>true,//         'types'=>'jpg,gif,png,doc,txt',//         'maxSize'=>1024 * 1024 * 10,// 10MB
//         'tooLarge'=>'文件大小不能超过10M!',//         'message'=>'请先上传证书图像.'
//     ),// The following rule is used by search().
      // @todo Please remove those attributes that should not be searched.
      array('id,role_id,password,email_address,tuijianren,gongshang,type,phone,qq,mobile_phone,fax,communication_address,business,certificate,'safe','on'=>'search'),);
  } 
  /*
   * 手机验证码校验 
   */
  public function checkVerify($attribute,$params)
  {   
    $model=new Mess();
    $d_title = $model->find(array('condition'=>'suij=:suij and tel=:tel and type>:type and time>:time','params'=>array(':suij'=>$this->verify,':tel'=>$this->mobile_phone,':type'=>0,':time'=>(time()-3600)),'select'=>array('id')));
    //$d_title = $model->findByAttributes(array('suij'=>$this->verify,'tel'=>$this->mobile_phone),array('select'=>array('id')));
    if($d_title['id']<1)
    {
      $this->addError('verify',"验证码不正确.");
    }
    else
    {
      if($this->password == $this->password2)
      {
        $model->updateAll(array('type'=>0),array('condition'=>'suij=:sj','params'=>array(':sj'=>$this->verify)));
      }
    }
  }

以上代码就是关于PHP Yii框架之表单验证规则大全的全部内容,希望大家喜欢.PHP编程

编程之家培训学院每天发布《PHP Yii框架之表单验证规则大全》等实战技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培养人才。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读