Yii表单提交与CActiveForm

时间:2015-04-02 10:04:30

标签: php forms yii

我只需要做一个注册表,我正在与CActiveForm完成这项任务。基本上它只是在表单提交上插入一个新的db记录。这就是我所拥有的,

MyView的

<!--begin a form-->
<?php $form = $this->beginWidget('CActiveForm', array(
   'id'=>'user-registration-form',
   'enableAjaxValidation'=>true,
   'enableClientValidation'=>true,
   'focus'=>array($model,'firstName'),
)); ?>

<!--error handling-->
<?php echo $form->errorSummary($model); ?>

<div class="row">
   <?php echo $form->labelEx($model,'firstName'); ?>
   <?php echo $form->textField($model,'firstName'); ?>
   <?php echo $form->error($model,'firstName'); ?>
</div>
<div class="row">
   <?php echo $form->labelEx($model,'lastName'); ?>
   <?php echo $form->textField($model,'lastName'); ?>
   <?php echo $form->error($model,'lastName'); ?>
</div>
<div class="row">
   <?php echo $form->labelEx($model,'age'); ?>
   <?php echo $form->textField($model,'age'); ?>
   <?php echo $form->error($model,'age'); ?>
</div>

<?php $this->endWidget(); ?>
<!--end a form-->

我的控制器会呈现上述视图,这就是我被困的地方,我还创建了一个名为用户的模型(避风港&#39;在其中完成任何代码,默认)

class RegisterController extends Controller
{
   public function actionIndex()
      {
        $model = User::
        $this->render('index', array('model'=>$model));
     }
}

从我的研究中我发现有类似的东西,jst dnt知道如何使用它 link

$post=new Post;
$post->title='sample post';
$post->content='post body content';
$post->save();

提前致谢

1 个答案:

答案 0 :(得分:0)

您需要在actionIndex

中进行操作
public function actionIndex()
  {
    $model = new User;
    if(isset($_POST['User']))
    {
       $model->attributes = $_POST['User'];
       if($model->save())
         //Do any stuff here. for example redirect to created user view.
    }
    $this->render('index', array('model'=>$model));
 }

我建议您阅读Building a blog system with Yii教程。这是非常好的学习资源,可以更好地学习,也可以学习任何Web应用程序中最重要的部分。