Php 在yii应用程序中更改密码页时出现问题

Php 在yii应用程序中更改密码页时出现问题,php,yii,Php,Yii,我想在特殊页面更改密码 当我点击“更改密码”时,我必须进入密码视图 这是我需要去的更新视图的代码 <?php /* @var $this UserController */ /* @var $model User */ $this->menu=array( array('label'=>'User List', 'url'=>array('index')), array('label'=>'Create User', 'url'=>array

我想在特殊页面更改密码

当我点击“更改密码”时,我必须进入密码视图

这是我需要去的更新视图的代码

<?php
/* @var $this UserController */
/* @var $model User */

$this->menu=array(
    array('label'=>'User List', 'url'=>array('index')),
    array('label'=>'Create User', 'url'=>array('create')),
    array('label'=>'View User', 'url'=>array('view', 'id'=>$model->id)),
    array('label'=>'Change password', 'url'=>array('password', 'id'=>$model->id)),
);
?>

<h1>Change user <?php echo $model->id; ?></h1>

<?php echo $this->renderPartial('_form', array('model'=>$model)); ?>
在示例中,我使用此代码可以很好地工作。但我有错误


所有文件和文件夹都具有根权限。我做错了什么?一个月前,同样的代码工作正常,我不知道出了什么问题。

您忘记检查
$\u POST
是否设置为在加载操作时(提交之前)
$\u POST['password']
不存在

if(isset($_POST['password'])) {
    $model->password=$_POST['password'];
    if($model->save())
        $this->redirect(array('view','id'=>$model->id));
}

$model
是否正确创建?
$id
中的值有效吗?一个
var\u转储($model)怎么样以确保。另外,将密码保存为明文也是一个坏主意。我在没有密码的情况下可以正常工作时添加了加密函数。id是有效的。我有正确的$model和$id。在url中我有正确的链接。但是页面不起作用。谢谢。但现在我又有麻烦了。如果我留下$this->render('password');我有错误。如果我设置$this->render('password',array('model'=>$this->loadModel($id));我有一页没有表格。最近的麻烦真可爱。我忘了在“CHtml”之前加上“echo”。现在一切都好了。
public function actionPassword($id) {
        $model=$this->loadModel($id);
        $model->password=$_POST['password'];
        if($model->save())
            $this->redirect(array('view','id'=>$model->id));
        $this->render('password');
}
if(isset($_POST['password'])) {
    $model->password=$_POST['password'];
    if($model->save())
        $this->redirect(array('view','id'=>$model->id));
}