[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 ...
随机推荐
- Openvswitch原理与代码分析(3): openvswitch内核模块的加载
上一节我们讲了ovs-vswitchd,其中虚拟网桥初始化的时候,对调用内核模块来添加虚拟网卡. 我们从openvswitch内核模块的加载过程,来看这个过程. 在datapath/dat ...
- CentOS6下Haproxy的安装配置
Haproxy 是一个开源的负载均衡和反向代理软件,其提供了高可用的网络服务.其一般是应用于web服务,但同时也能为SMTP和终端服务等提供可靠的支持. 1.下载安装haproxy wget ftp: ...
- LoadRunner AJAX TruClient协议Tips and Tricks
LoadRunner AJAX TruClient协议Tips and Trickshttp://automationqa.com/forum.php?mod=viewthread&tid=2 ...
- 配置算法(第4版)的Java编译环境
1. 下载 1.1 JDK http://www.oracle.com/technetwork/java/javase/downloads/index.html选择“Windows x64 180.5 ...
- android中无限循环滑动的gallery实例
android中无限循环滑动的gallery实例 1.点击图片有变暗的效果,使用imageview.setAlpha(),并且添加ontouchListener public void init() ...
- Java IO 之 OutputStream源码
Writer :BYSocket(泥沙砖瓦浆木匠) 微 博:BYSocket 豆 瓣:BYSocket FaceBook:BYSocket Twitter ...
- [转]YII2 常用数据库操作
1.对象操作: //1.简单查询 $admin=Admin::model()->findAll($condition,$params); $admin=Admin::model()->fi ...
- java攻城狮之路(Android篇)--Activity生命
一:Activity的激活 1.写一个类 extends Activity Activity是android的四大组件之一.Activity的激活分为显式意图激活和隐式意图激活.如果一个activit ...
- Vectoroid
Use cases Drawing (sketch, illustrations, cartooning, etc). Diagramming (any sort of chart with obje ...
- smartjs - DataManager 场景示例分析 - 数据懒加载
发一张policy的参数图设置图: 场景1 - 数据的懒加载/延迟加载 在很多时候,为了提高网页的加载速度,减少不必要的开销,会将页面的数据拆分成几个部分,首先加载呈现可视区域内的数据,然后剩下来的会 ...