数据被保存两次到数据库

时间:2014-05-22 16:32:19

标签: php yii

这是我的代码:

public function actionPostTest()
{

    if(isset($_POST['Test']))
    {
        $model = new Test();
        $model->attributes = $_POST['Test'];
        if($model->save())
        {
            $this->redirect('postTest');
        }
    }

    $this->render('posttest', array('model'=>new Test()));
}

这是将表单中的数据保存两次到数据库。

有什么问题?

2 个答案:

答案 0 :(得分:4)

尝试禁用ajax验证。

在该视图中将enableAjaxValidation设置为false

实际上POST发生了两次。第一个Ajax验证和第二个表单提交。你可以在firefox中使用httpfox来确认它。

答案 1 :(得分:0)

  

你可以试试这个

$model = new Test();
if(isset($_POST['Test']))
{       
    $model->attributes = $_POST['Test'];
    if($model->save())
    {
        unset($_POST['Test']);
        $this->redirect('postTest');
    }
}