yii2.0 控制器方法 视图表单 Form表单处理
2015-12-29 16:25
615 查看
假设我们在ArticleController.php下面的actionForm方法中来处理提交的表单
新建立一个 views/Article/article-form.php文件用来作为输入表单
新建立一个 views/Article/article-confirm.php文件用来显示表单处理成功后的结果
需求:提交过来的数据需要验证--title、content不能为空
新建models/ArticleForm.php
最后在ArticleController.php中完成actionForm方法
访问http://www.basic.com/index.php?r=article/form即可测试
新建立一个 views/Article/article-form.php文件用来作为输入表单
<?php use yii\helpers\Html; use yii\widgets\ActiveForm; ?> <?php $form = ActiveForm::begin(); ?> <?= $form->field($model, 'title') ?> <?= $form->field($model, 'content') ?> <div class="form-group"> <?= Html::submitButton('Submit', ['class' => 'btn btn-primary']) ?> </div> <?php ActiveForm::end(); ?>
新建立一个 views/Article/article-confirm.php文件用来显示表单处理成功后的结果
<?php use yii\helpers\Html; ?> <p>You have entered the following information:</p> <ul> <li><label>Name</label>: <?= Html::encode($model->title) ?></li> <li><label>Email</label>: <?= Html::encode($model->content) ?></li> </ul>
需求:提交过来的数据需要验证--title、content不能为空
新建models/ArticleForm.php
<?php namespace app\models; use yii\base\Model; class ArticleForm extends Model { public $title; public $content; public function rules() { return [ [['title', 'content'], 'required'], //['email', 'email'], ]; } }
最后在ArticleController.php中完成actionForm方法
public function actionForm() { $model = new ArticleForm; if ($model->load(Yii::$app->request->post()) && $model->validate()) { // 验证 $model 收到的数据 // 做些有意义的事 ... return $this->render('article-confirm', ['model' => $model]); } else { // 无论是初始化显示还是数据验证错误 return $this->render('article-form', ['model' => $model]); }
访问http://www.basic.com/index.php?r=article/form即可测试
相关文章推荐
- Php反转字符串函数
- 项目上线,php的错误信息必须不让其在页面中显示给客户,
- PHP 汉字转拼音类(全拼与首字母)
- excel文件怎么使用php进行处理
- yii,CI,yaf框架+smarty模板使用方法
- PHP函数 ------ uniqid
- PHP函数 ------ ctype_alnum
- 利用PHP函数计算中英文字符串长度的方法
- php-验证码类-PDO类-缩略图类
- 借助PHP服务器完成SMS信息转发
- 探索使用 PHP 进行实际的数据挖掘和解析
- php-数据库-分页类-上传类
- yii2.0 从控制器到视图的输出
- IE浏览器下POST中文乱码解决办法 - PHP实现
- MTK TP手势添加
- php防止sql注入的程序设计
- php.ini中开启和关闭 session auto_start 的区别
- php中__autoload和spl_autoload_register的用法
- php命名空间详解
- Laravel 的 Homestead 开发环境部署