[moka同学笔记]yii2.0表单的使用
1.创建model /biaodan.php
<?php
/**
* Created by PhpStorm.
* User: moka同学
* Date: 2016/08/05
* Time: 10:26
*/
namespace app\models; use Yii;
use yii\base\Model;
class Biaodan extends Model{
public $name;
public $pass;
public $email;
public $sex;
public $edu;
public $hobby;
public $info; //设置验证规则
public function rules()
{
return [
[['name','pass','email','sex','edu','hobby','info'],'required'],
['email','email','message'=>'这里是邮箱'],
['name','string','length'=>[2,10]]
];
} //定义表单标签
public function attributeLabels()
{
return [
'name'=>'名称',
'email'=>'邮箱',
'pass'=>'密码',
'edu'=>'教育',
'sex'=>'性别',
'hobby'=>'爱好',
'info'=>'简介'
];
}
}
?>
注:
自定义标签,用于显示表单标签
rules规则的创建,用于验证表单数据
2.控制器 BiaodanController.php
<?php
/**
* Created by PhpStorm.
* User: moka同学
* Date: 2016/08/05
* Time: 10:23
*/
namespace app\controllers; use app\models\Biaodan;
use yii\web\Controller; class BiaodanController extends Controller{
public $layout = "home";
public function actionIndex(){
// print_r($_POST);die();
$model = new Biaodan();
//如果有表单值就需要通过验证
if($model->load(\Yii::$app->request->post()) && $model->validate()){
return $this->render('index-two',['model'=>$model]);
}else{
return $this->render('index',['model'=>$model]);
}
}
}
?>
注:
\Yii::$app->request->post() 获取表单提交过来的数据 3.视图 index.php
<?php
use yii\helpers\Html;
use yii\widgets\ActiveForm;
?>
<?php $form = ActiveForm::begin(); ?>
<?=$form->field($model,'name')->textInput(['style'=>'width:200px;'])?>
<?=$form->field($model,'pass')->passwordInput(['style'=>'width:200px;'])?>
<?=$form->field($model,'email')->textInput(['style'=>'width:200px;'])?>
<?=$form->field($model,'sex')->radioList(['1'=>'男','2'=>'女'])?>
<?=$form->field($model,'edu')->dropDownList(['1'=>'大学','2'=>'中学','3'=>'小学'],['style'=>'width:200px;'])?>
<?=$form->field($model,'hobby')->checkboxList(['篮球'=>'篮球','排球'=>'排球','乒乓球'=>'乒乓球'])?>
<?=$form->field($model,'info')->textarea(['rows'=>3,'style'=>'width:400px;'])?>
<div class="form-group">
<?=Html::submitButton('提交',['class'=>'btn btn-primary'])?>
</div>
<?php $form = ActiveForm::end(); ?>
注:
视图也可以使用gii去生成,但是还是需要更改很多地方
index-two.php (可以忽略)
<?php
use yii\helpers\Html;
?>
<ul>
<li><label><?=$model->name;?></label></li> <!--//原生写法-->
<li><label><?=Html::encode($model->pass)?></label></li> <!--//小部件写法-->
</ul>
注:
表单未完,还有很多bootstrap样式用于表单中
以上~~
注:~ 转载请注明出处。QQ1727728211
[moka同学笔记]yii2.0表单的使用的更多相关文章
- [moka同学笔记]yii2 activeForm 表单样式的修改(二)
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAABAEAAANXCAIAAADLkdErAAAgAElEQVR4nOzdfWwc953nef6zwO5Zg8
- [moka同学笔记]yii2 activeForm 表单样式的修改
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAv4AAANcCAIAAACopDy/AAAgAElEQVR4nOzdfXAb52H4ef1veSatRV
- [moka同学笔记]yii2.0查询数据库
一. [:id占位符]使用 $results = Test::findBySql($sql,array(':id'=>'1 or 1=1))->all() 二. [id=1] 选 ...
- [moka同学笔记]Yii2.0 modal的使用
第一次使用,时候不明白什么原理,大概用了几次后,才模模糊糊搞清楚原来是怎么一回事,现在就把写过的代码,贴在下边. 1.在视图文件中, 第一步首先在index.php文件中 做了一个a链接的按钮 调用了 ...
- [moka同学笔记]yii2.0缓存
1.控制器中CacheDemoController.php <?php /** * Created by PhpStorm. * User: moka同学 * Date: 2016/06/29 ...
- [moka同学笔记]yii2.0数据库操作以及分页
1.model中models/article.php 1 <?php 2 3 namespace app\models; 4 5 use Yii; 6 7 /** 8 * This is the ...
- [moka同学笔记]Yii2.0验证码
1.Model中Code.php <?php /** * Created by PhpStorm. * User: moka同学 * Date: 2016/07/25 * Time: 10:48 ...
- [moka同学笔记]yii2.0小物件的简单使用(第二种方法)
1.在widgets/TestWidget.php中 <?php /** * Created by PhpStorm. * User: moka同学 * Date: 2016/08/05 * T ...
- [moka同学笔记]yii2.0小物件的简单使用(第一种方法)
这是第一种方法,还有另一种方法,其实都差不多. 1.在创建widgets\HelloWiget.php <?php /** * Created by PhpStorm. * User: Admi ...
随机推荐
- 理解netty对protocol buffers的编码解码
一,netty+protocol buffers简要说明 Netty是业界最流行的NIO框架之一优点:1)API使用简单,开发门槛低:2)功能强大,预置了多种编解码功能,支持多种主流协议:3)定制能力 ...
- .NET Framework 类库
.NET Framework 类库 MSDN == V2.0 == .NET Framework 类库是一个由 Microsoft .NET Framework SDK 中包含的类.接口和值类型组成的 ...
- [under the hood]Reduce EXE and DLL Size with LIBCTINY.LIB
Matt Pietrek Download the code for this article: Hood0101.exe (45KB) W ay back in my October 1996 co ...
- 使用Spring MVC统一异常处理
http://blog.csdn.net/ufo2910628/article/details/40399539
- POJ 1012 Joseph
Joseph Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 44650 Accepted: 16837 Descript ...
- 跟随标准与Webkit源码探究DOM -- 获取元素之getElementsByTagName
按照标签名获取元素 -- getElementsByTagName 标准 DOM 1在Element和Document两个interface中均有定义,原型NodeList getElementsBy ...
- [转]YII2 常用数据库操作
1.对象操作: //1.简单查询 $admin=Admin::model()->findAll($condition,$params); $admin=Admin::model()->fi ...
- js获取url参数值的方法
index.htm?参数1=数值1&参数2=数值2&参数3=数据3&参数4=数值4&...... 静态html文件js读取url参数 根据获取html的参数值控制htm ...
- Mac OS使用ll、la、l等ls的别名命令
在linux下习惯使用ll.la.l等ls别名的童鞋到mac os可就郁闷了-- 其实只要在用户目录下建立一个脚本“.bash_profile”,并输入以下内容即可: alias ll='ls -al ...
- Linux高级编程--09.线程互斥与同步
多个线程同时访问共享数据时可能会冲突,比如两个线程都要把某个全局变量增加1,这个操作在某平台需要三条指令完成: 从内存读变量值到寄存器 寄存器的值加1 将寄存器的值写回内存 假设两个线程在多处理器平台 ...