想请教一下THINKPHP中的修改密码如何写,修改不会写了也找了很多资料

想请教一下THINKPHP中的修改密码如何写,我写了登陆了,算是模仿老师的写法,但是修改不会写了,也找了很多资料 还是不太会。下面是我的登陆代码

//作者:文梓行。用户登陆
class LoginAction extends Action {
    function index() {
        $this->assign ( 'title', '美食分享网' );
        $this->display ();
    }
    function login() {
        header ( "Content-Type:text/html;charst=utf-8" );
        if ($_SESSION ['verify'] != md5 ( $_POST ['verify'] )) {
            $this->error ( '验证码错误!' );
        }
        // 创建用户表
        $user = D ( 'User' );
        if ($user->create ()) { // 获取用户提交的密码加密
            $pwd = md5($this->_param ( 'password' ));
            // 获取用户名
            $name = $this->_param ( 'name' );
            // 获取来的用户密码去与表中匹配
            $result = $user->where ( "name='$name'  
                    AND password='$pwd'" )->find ();
            if ($result!=null) {
                //不为空就保存到session中避免要求用户重复登陆
                session('name',$name);
                //跳转到美食网主页
                $url=U('/Index/index/name/'.$name);
                redirect($url,0,'跳转中...');
            }else {
                $this->error('登陆失败,请检查是否输入错误');
            if ($result != null) {
                // 不为空就保存到session中避免要求用户重复登陆
                session ( 'name', $name );
                // 跳转到美食网主页
                $url = U ( '/Index/index/name/' . $name );
                redirect ( $url, 0, '跳转中' );
            } else {
                $this->error ( '登陆失败,请检查是否输入错误' );
            }
            }
        } else {
            $this->error ( $user->getError () );
        }
    }
}

?>  

那就再写一个方法,首先写三个输入框的from表单,一个判断用户是否输入密码与数据库的旧密码一致,两个为更改新的密码框,一致就用save()来更新

那就写多一个方法function change_psw();前端就写一个表单,分别有旧密码,新密码,确认密码输入框,可以用ajax异步判断输入的旧密码是否与数据库中的密码一致,然后提交新密码,用change_psw()进行修改操作,最后用save()