处理帖子并使用Yii Framework和PHP(无法修改标题信息 - 已发送的标题)?

时间:2014-09-16 14:46:30

标签: php yii

    if (Yii::app()->request->isPostRequest) {
        $model = new User('reset');
        if (isset($_POST['User'])) {
            $model->attributes = $_POST['User'];
            if ($model->validate()) {
                //change pasword etc
                if ($user->save()) {
                    $this->render('reset', array('model' => $model, 'done' => 1));
                }
            } else {
                $model->password = '';
                $model->repeat_password = '';
                $this->render('reset', array('model' => $model));
            }
        }
    } elseif (isset($_GET['id']) && isset($_GET['key'])) {
        $id = $_GET['id'];
        $key = $_GET['key'];
        $key_comp = ....;

        if ($key == $key_comp) {
            $this->render('reset', array('model' => $model, 'reset' => $key_comp));
        } else {
            $this->render(array('forgot'));
        }
    } else {
        $this->redirect(array('forgot'));
    }

我收到此错误: 无法修改标头信息 - 已发送的标头

当我更新密码,然后页面再次使用(完成变量)渲染时,密钥会更改,从而中断if ($key == $key_comp)

但是重定向正在向已经调用的渲染器发送到另一个页面。这显然不是最好的方法,需要一些整理,但我不认为可以采取单一行动。

可以完成还是必须分开?

0 个答案:

没有答案