1.创建model /biaodan.php
1 <?php 2 /** 3 * Created by PhpStorm. 4 * User: moka同学 5 * Date: 2016/08/05 6 * Time: 10:26 7 */ 8 namespace appmodels; 9 10 use Yii; 11 use yiiaseModel; 12 class Biaodan extends Model{ 13 public $name; 14 public $pass; 15 public $email; 16 public $sex; 17 public $edu; 18 public $hobby; 19 public $info; 20 21 //设置验证规则 22 public function rules() 23 { 24 return [ 25 [['name','pass','email','sex','edu','hobby','info'],'required'], 26 ['email','email','message'=>'这里是邮箱'], 27 ['name','string','length'=>[2,10]] 28 ]; 29 } 30 31 //定义表单标签 32 public function attributeLabels() 33 { 34 return [ 35 'name'=>'名称', 36 'email'=>'邮箱', 37 'pass'=>'密码', 38 'edu'=>'教育', 39 'sex'=>'性别', 40 'hobby'=>'爱好', 41 'info'=>'简介' 42 ]; 43 } 44 } 45 ?>
注:
自定义标签,用于显示表单标签
rules规则的创建,用于验证表单数据
2.控制器 BiaodanController.php
1 <?php 2 /** 3 * Created by PhpStorm. 4 * User: moka同学 5 * Date: 2016/08/05 6 * Time: 10:23 7 */ 8 namespace appcontrollers; 9 10 use appmodelsBiaodan; 11 use yiiwebController; 12 13 class BiaodanController extends Controller{ 14 public $layout = "home"; 15 public function actionIndex(){ 16 // print_r($_POST);die(); 17 $model = new Biaodan(); 18 //如果有表单值就需要通过验证 19 if($model->load(Yii::$app->request->post()) && $model->validate()){ 20 return $this->render('index-two',['model'=>$model]); 21 }else{ 22 return $this->render('index',['model'=>$model]); 23 } 24 } 25 } 26 ?>
注:
Yii::$app->request->post() 获取表单提交过来的数据
3.视图 index.php
1 <?php 2 use yiihelpersHtml; 3 use yiiwidgetsActiveForm; 4 ?> 5 <?php $form = ActiveForm::begin(); ?> 6 <?=$form->field($model,'name')->textInput(['style'=>'200px;'])?> 7 <?=$form->field($model,'pass')->passwordInput(['style'=>'200px;'])?> 8 <?=$form->field($model,'email')->textInput(['style'=>'200px;'])?> 9 <?=$form->field($model,'sex')->radioList(['1'=>'男','2'=>'女'])?> 10 <?=$form->field($model,'edu')->dropDownList(['1'=>'大学','2'=>'中学','3'=>'小学'],['style'=>'200px;'])?> 11 <?=$form->field($model,'hobby')->checkboxList(['篮球'=>'篮球','排球'=>'排球','乒乓球'=>'乒乓球'])?> 12 <?=$form->field($model,'info')->textarea(['rows'=>3,'style'=>'400px;'])?> 13 <div class="form-group"> 14 <?=Html::submitButton('提交',['class'=>'btn btn-primary'])?> 15 </div> 16 <?php $form = ActiveForm::end(); ?>
注:
视图也可以使用gii去生成,但是还是需要更改很多地方
index-two.php (可以忽略)
1 <?php 2 use yiihelpersHtml; 3 ?> 4 <ul> 5 <li><label><?=$model->name;?></label></li> <!--//原生写法--> 6 <li><label><?=Html::encode($model->pass)?></label></li> <!--//小部件写法--> 7 </ul>
注:
表单未完,还有很多bootstrap样式用于表单中
以上~~
注:~ 转载请注明出处。QQ1727728211