form表单提交

今天学了一个form表单的提交

//html
{extend name='./common/father'}
{block name='one'}
//{:url('post')} 这个url对应的为引入该html的控制器下的post方法
//password_confirm使用confrim方法。验证值和被验证值。如果a是XXX。则b要验证的命名方法为XXX.confrim。
{/block}

php中的一些处理

post();//获取post提交中的所有值。
//    halt($post);
//        halt($_POST['username']);
        //对post衍生
       $yz= Validate::make([
            'username'=>'require|min:3|max:15',
         'nickname'=>'require|min:3|max:15',
         'password'=>'require|min:3|max:15|confirm',
       ]);
//验证的一些值,'password'=>'require|min:3|max:15|confirm',对应的上文html中的值。
//含义,require:请求值;min最短为3,max最长为15.
       $status=$yz->check($post); //验证其中的值,$yz中的的定义规则是否满足定义的需求。满足为true不满足为false
//       halt($status);
        if($status){
//数据库方法能用的原因,use thinl\DbY引入了。
        db::table('user')->insert([
            'username'=>$post['username'],
            'nickname'=>$post['nickname'],
            'password'=>md5($post['password']),
        ]);
//插入数据并对密码进行md5加密
        return $this->success('注册成功,请登录','/public');返回主页面。第一个参数提示文字,第二个参数返回的url
        }else{
//            halt($yz->getError());
            return $this->error($yz->getError());//返回当前页面因为出错了。
        }
}
}

中途的报错:
//Call to undefined method app\regiser\controller\Login::success()
原因 自己定义的类没有继承 控制器即,extends Controller。

登录

  session('id',$status['id']);
  session('username',$status['username']);
登陆后获取的值。

你可能感兴趣的:(form表单提交)