yii YII小部件 创建登录表单表单 Login表单
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));//绿色部分和前台代码$user_login 要一致
接下来创建view视图
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
在前台登录页面可以这么写:
<?php $form=$this->beginWidget('CActiveForm'); ?>
<DIV class="to">
<SPAN class="tol"><A class="v" href="/" target=_blank></A></SPAN>
</DIV>
<DIV class="in">
<DL>
<!-- 创建标签名 -->
<DT><?php echo $form->labelEx($user_login,'username'); ?></DT>
<DD>
<!-- 创建文本输入框 -->
<?php echo $form->textField($user_login,'username',array('size'=>25,'class'=>'inputBg()'));?>
</DD>
<DD class="e"></DD>
</DL>
<DL>
<DT><?php echo $form->labelEx($user_password,'password');?></DT>
<DD>
<?php echo $form->textField($user_password,'password',array('size'=>25,'class'=>'inputBg()'));?>
</DD>
<DD class="e"></DD>
</DL>
</DIV>
<DIV class="su">
<SPAN><INPUT class="go" type=submit value=""></SPAN>
</DIV>
<?php $this->endWidget(); ?>
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
接下来创建表单数据的验证了
它有两个方法,一个是save方法,一个是validate方法
表单数据验证save()方法可以一边校验数据,校验成功可以存储数据
save() 到后边有一个环节会执行模型的rules()方法,也就校验表单
我们现在用实现登录表单的验证,可以调用validate(),这个方法校验我们输入的信息。节省了save环节,该方法执行的后面也会去执行rules方法
配置校验提示信息(在modle--->loginForm)
然后进入上面if语句的anthenticat方法里面,对用户名进行验证操作
接着在前台登录界面添加提示错误信息
<?php echo $form->error($user_login,'username')?>
<?php echo $form->error($user_login,'password'); ?>
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
用UerIdentity组件进行用户验证
yii YII小部件 创建登录表单表单 Login表单的更多相关文章
- YII自定义小部件
案例如下 common/widgets/TopMenu.php(地址可以自定义位置,命名空间一定要对应) <?php /** * Created by PhpStorm. * Date: 201 ...
- dhtmlxSpreadSheet开源电子表格小部件创建教程
dhtmlxSpreadSheet是用纯JavaScript编写的开源电子表格小部件,可让您快速在网页上添加类似于Excel的可编辑数据表.高度可定制的JavaScript电子表格组件,具有优雅的Ma ...
- 小程序 之登录 wx.login()
小程序的登录关键在于使用wx.login()方法后,要到取到code值传到后台, 再用小程序平台本帐号生成的appid+addsecret+code去微信接口服务取得用户唯一标识后即可登录[注意:此步 ...
- yii 表单小部件使用
首先创建model层 因为要使用表单小部件 所以要加载相应的组件 这里需要的组件有 yii\widgets\ActiveForm 和 yii\helpers\Html 接下来在model定义的clas ...
- YII 小部件 yii小部件查看方法 小物件做的表单
要使用小部件,可以先到总文件去找 framework/yiilite文件里面搜索“CAtiveForm” (如果觉得小部件的radio布局有点难看,可以在外面定义,具体可以在控制器里面定义) 如下 ...
- YII 小部件实现的注册表
今天来进行用户注册功能yii集成了很多验证框架,framework/validators下面,这个文件夹的最后一个文件CValidator.php 是总的验证信息,根据请求参数决定需要那种验证 如:u ...
- 用JS动态创建登录表单,报了个小错误
后来发现原来是: dvObj.style.border='#Red 1px sold'; 其中的Red多谢了一个‘#’, 但是奇怪的是在chrome和firefox都备有报错,但是在ie中报错了. 各 ...
- Yii框架2.0的小部件
小部件是视图里的可重用单元. 小部件是在视图中使用的,但是可能需要使用控制器传给他的模型,比如在渲染表单的时候.比如一般的时间拾取器就可以直接砸视图里加入如下代码就可以: <?php use y ...
- yii2.0 表单小部件常用的默认选中
下面自己总结了一下表单小部件中经常使用到的一些默认选中 直接在视图代码里面说明啦 <?php //这个表头就不多说了 use yii\helpers\Html; use yii\widgets\ ...
随机推荐
- CLI Console
CLI Console New to 3.0 is a command line utility aptly named Nova located in the root. It currently ...
- UTF-8编码与Unicode CS2的转换
/* Convert a UTF-8 string into a UCS-2 array. */ void tcstrutftoucs(const char *str, uint16_t *ary, ...
- 关于JFace的自定义对话框(Dialog类)
仅仅是使用MessageDialog,InputDialog等JFace中现成的对话框类是无法满足实际项目开发需要的. 很多时候都需要自己定制对话框,自定义对话框只要在Dialog类的基础上作扩展就行 ...
- 今天学习image在html中的应用
今天学习image在html中的应用 上次在学习超级链接的使用中有一小问题,是在添加网址中href="http://www.baidu.com" 中不能忘记http://,否则链接 ...
- 1.2、Mybatis二级缓存测试
package me.gacl.test; import me.gacl.domain.User; import me.gacl.util.MyBatisUtil; import org.apache ...
- JNDI初认识
JNDI即Java命名和目录接口,英文全称为Java Naming and Directory Interface,从字面上似乎十分晦涩,下面从理论和实际项目应用方面来阐述. 1.命名:在我们实际生活 ...
- SpringMVC使用@ResponseBody注解返回中文字符串乱码的问题
先说一下我的经历,以及解决问题的而过程. 在使用SpringMVC的时候,最开始的时候在配置文件中使用<mvc:annotation-driven />去自动注册DefaultAnnota ...
- RabbitMQ 原文译1.1--HelloWord
本系列文章均来自官网原文,属于个人翻译,如有雷同,权当个人归档,忽喷. RabitMQ 是一个消息中间件,其实就是从消息生产者那里接受消息,然后发送给消息消费者.在这个传输过程中,可以定义一些缓存,持 ...
- java web 优化札记
1.效果最明显最简单最省事的优化是SSD,一般优化效率3倍起,(未必对,但是说明很多瓶颈问题都是存储问题) 2.垂直扩容省了开发时间,短期来看是最快的,缺点是会消耗更多的资源,而且有瓶颈,另外如果应用 ...
- kettle中Get Data from XML , Jason Input , 文本文件输入 使用示例
1.Get Data from XML xml文件内容: <head> <img id="1">菜||焦溜丸子||2013-03-28/image/0/00 ...