首頁  >  文章  >  php教程  >  yii YII小部件 创建登录表单表单 Login表单

yii YII小部件 创建登录表单表单 Login表单

WBOY
WBOY原創
2016-06-13 09:39:41929瀏覽

YII框架必须遵循其表单的创建方法

登录模型错做与数据库操作模型是一致的,不同的是不跟数据库交互

,用的是小部件,在创建表单之前,要在用户控制模块完成以下代码

protected

  --models

      --LoginFrom

在这个LoginFrom里面设置标签名

/**
     * Declares attribute labels.
     */
    public function attributeLabels()
    {
        return array(
            'username'=>'用户名',
            'password'=>'密      码',
            //'rememberMe'=>'Remember me next time',
        }

  接下来创建登陆模型对象(controllers 控制登录模块)
            $user_login=new LoginForm();
            $this ->render('login',array(''=>$user_login));//绿色部分和前台代码$user_login 要一致

 接下来创建view视图

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

在前台登录页面可以这么写:

//绿色部分注意不要写错

beginWidget('CActiveForm'); ?>
                


                    
                

                

                    

                        
                        
labelEx($user_login,'username'); ?>

                        

                        
                           textField($user_login,'username',array('size'=>25,'class'=>'inputBg()'));?>
                        

                        

                    

                    

                        
labelEx($user_password,'password');?>

                        

                       textField($user_password,'password',array('size'=>25,'class'=>'inputBg()'));?>
                        

                        

                    


                

                

                    
                

          endWidget(); ?>

 

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

 接下来创建表单数据的验证了

它有两个方法,一个是save方法,一个是validate方法

表单数据验证save()方法可以一边校验数据,校验成功可以存储数据save() 到后边有一个环节会执行模型的rules()方法,也就校验表单

 我们现在用实现登录表单的验证,可以调用validate(),这个方法校验我们输入的信息。节省了save环节,该方法执行的后面也会去执行rules方法

 

配置校验提示信息(在modle--->loginForm)

public function rules()
    {
        return array(
            // username and password are required
            '用户名必填'),


      '密码必填'),
                //array('username,password', 'required'),
            // rememberMe needs to be a boolean
            //array('rememberMe', 'boolean'),
            // password needs to be authenticated
            array('password', 'authenticate'),
        );
    }



接着在前台登录界面添加提示错误信息

error($user_login,'username')?>

error($user_login,'password'); ?>

 

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

用UerIdentity组件进行用户验证

 

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn