+ -
当前位置:首页 → 问答吧 → 李文凯老师视频中的thinkphp三大自动问题

李文凯老师视频中的thinkphp三大自动问题

时间:2011-10-09

来源:互联网

代码如下:
<?php
class ResAction extends Action{
    function index() {
           $this->display('res');
    }
    function add () {
        $user=D('User');
            // new UserModel
            if($user->create()){
                if($user->add()){
                    $this->success('注册成功');
                }else{
                    $this->error('注册失败');
                }
            }else{
                $this->error($user->getError());
            }
}
}
?>
model中:
class ResModel extends Model {
   protected  $_map=array(
        'uname'=>'username',
        'upass'=>'password',

    );
    protected $_validate=array(
        array('uname','require','用户名必须填写'),
        array('uname','checklen','用户名长度过长或过短',0,'callback'),
        array('upass','require','密码必填'),
        array('repassword','require','重复密码必填'),
        array('upass','repassword','两次密码不一致',0,'confirm'),
    );
    protected $_auto=array(
            array('password','md5',3,'function'),
            array('createip','returnip',1,'callback'),
            array('createtime','time',1,'function'),

    );


    function returnip(){
            return $_SERVER['REMOTE_ADDR'];
    }

    function checklen($data){
        if(strlen($data)>15||strlen($data)<5){
            return false;
        }else{
            return true;
        }
    }
}
?>
模板:
<form action="__URL__/add" method="post">
  <dl>
   <dd>用 户 名:<input type="text" name="uname"></dd>
   <dd>密  码:<input type="password" name="upass"></dd>
   <dd>重复密码:<input type="password" name="repassword"></dd>
   <dd><input type="submit" value="注册"></dd>
  </dl>
</form>
自动验证的信息提示不能显示出来,只验证重复密码这一块,我是跟着老师敲的代码,为何他的行,我的就不行,求高手帮忙啊!

作者: 鱼龙帅   发布时间: 2011-10-09

$user->getError()  不是调用 UserModel 了吗?

作者: missonce   发布时间: 2011-10-09