视图层下跳转方法:
__URL__/方法名(跳转到当前控制器下的方法)
__APP__/控制器名/方法名(跨控制器跳转)
控制器下:
I(‘post.’);接过所有以POST方式传过来的值;
I ('get.')接过所有以GET方式传过来的值;
D('user')调用user这个model层
D('user')->login('$arr');调用user这个model层下的login方法并把$arr的值传入到login下
M(‘表名’)实例化一个表
$this->success('提示信息',U('目录名/文件名'));操作成功给出提示并跳转到指定的目录下的文件
$this->error('提示信息');操作失败给出提示并自动返回页面
$this->assign('arr',$arr);传值
$this->dispaly();如果里面不填写参数就自动跳转到视图层下和当前方法名相同目录下的相同文件名下 如果填写参数则跳转到视图层下和当前方法名相同目录下的填写参数名称相同的页面
getField(表字段名)sql语句 获取筛选字段的值
Model层下:
public function login($arr){ //$arr是控制器传过来的值
SQL语句:
return $this->Table(表名)->where(条件)->find(); //查询一条数据
return $this->Table(表名)->where(条件)->select(); //查询多条数据
return $this->Table(表名)->add(); //添加数据
return $this->Table(表名)->where(条件)->save(); //修改数据
return $this->Table(表名)->where(条件)->delete(); //删除数据
}
public function add(){ if($_SESSION['verify'] != md5($_POST['yzm'])) { $this->error('验证码错误!'); } //引入上传文件 import('ORG.Net.UploadFile'); $upload = new UploadFile();// 实例化上传类 $upload->maxSize = 2000000 ;// 设置附件上传大小 $upload->allowExts = array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型 $upload->savePath = './Public/Uploads/';// 设置附件上传目录 if(!$upload->upload()) {// 上传错误提示错误信息 $this->error($upload->getErrorMsg()); }else{// 上传成功 获取上传文件信息 $info = $upload->getUploadFileInfo(); } // 保存表单数据 包括附件数据 $User = M("aa"); // 实例化User对象 $User->create(); // 创建数据对象 $User->filename = $info[0]['savename']; // 保存上传的照片根据需要自行组装 $b=$User->add(); // 写入用户数据到数据库 if($b){ $this->success('上传成功','__URL__/showlist'); }else{ $this->error('上传失败'); } }
public function showlist(){ $User = M('aa'); // 实例化User对象 import('ORG.Util.Page');// 导入分页类 $count = $User->count();// 查询满足要求的总记录数 $Page = new Page($count,2);// 实例化分页类 传入总记录数和每页显示的记录数 $show = $Page->show();// 分页显示输出 // 进行分页数据查询 注意limit方法的参数要使用Page类的属性 $list = $User->join('tp_bb ON tp_aa.u_id = tp_bb.u_id')->limit($Page->firstRow.','.$Page->listRows)->select(); $b=$User->find(); $this->assign('list',$list);// 赋值数据集 $this->assign('b',$b);// 赋值数据集 $this->assign('page',$show);// 赋值分页输出 $this->display(); // 输出模板 }