夺命雷公狗TP3.2.3商城7-----管理员的修改

首先我们需要来到列表也的模版下,做下编辑前的工作:

首先在列表页将id用get的方法让他传给edit方法,然后在控Admin控制器下的edit方法中进行查询:

由于是单条数据,所以我们直接使用 $data.username  这种方式即可将他分配到模板页中:

 

然后我们来看看效果先:

 

已经成功分配过来了,但是在修改钱还有一个很重要工作,那就是在edit模板页通过input隐藏域通过post发送一条数据给edit方法,如下所示:

 

然后开始编写控制器中的edit方法:

 

<?php
namespace Admin\Controller;
use Think\Controller;
class AdminController extends Controller {
    public function lists(){
        $mod = M('admin');
            $totalRows = $mod->count();
            //创建分页对象时,分页对象需要总记录数和分页条数
            $page = new \Think\Page($totalRows,2);
            $page -> rollPage =3; //分页列表上显示多少条
            $page->setConfig('theme','%FIRST% %UP_PAGE% %LINK_PAGE% %DOWN_PAGE% %END%   %HEADER%');
            $page->setConfig('first','首页');
            $page->setConfig('prev','上一页');
            $page->setConfig('next','下一页');
            $page->setConfig('last','尾页');
            $pageHtml = $page -> show();//生成分页的连接诶效果(分页工具条的html代码)
            $this -> assign('pageHtml',$pageHtml);//分配分页栏到模版
            //2.查询出当前页面的列表数据
            $data = $mod ->order('id desc')->page(I('get.p',1),$page->listRows)->select();
            $this -> assign('data',$data);
            $this -> display();
    }

    public function add(){
        $mod = D("admin");
        if(IS_POST){
            $data['username'] = I('username');
            $data['password'] = I('pass');
            $data['passer'] = I('passer');
            if($data['password'] == $data['passer']){
                $data['password'] = md5($data['password']);
                if($mod->create($data)){
                    if($mod->add($data)){
                        $this -> success('管理员添加成功');
                    }else{
                        $this->error('管理员添加失败');
                    }
                }else{
                    $this->error($mod->getError());
                }
            }else{
                $this->error('确认密码错误');
            }
            return;//这里的return主要是为了防止跳转
        }
        $this -> display();
    }

    public function edit(){
        $id = I('id');
        $mod = D('admin');  //因为修改时候我们需要使用到模型,所以我们需要使用D方法
        $data = $mod -> find($id);
        $this -> assign("data",$data);
        if(IS_POST){
            $datas['username'] = I('username');
            $datas['password'] = I('pass');
            $datas['passer'] = I('passer');
            $datas['id'] = $id;
            if($datas['password'] == $datas['passer']){
                $datas['password'] = md5($datas['password']);
                if($mod->create($datas)){
                    if($mod -> save($datas)){
                        $this -> success('管理员修改成功',U('admin/lists'));
                    }else{
                        $this -> error('修改管理员失败!');
                    }
                }else{
                    $this -> error($mod->getError());
                }
            }else{
                $this -> error('两次输入密码不相符');
            }
            return;
        }
        $this -> display();
    }

    public function del(){
        $id = I('id');
        if(M('admin')->delete($id)){
            $this->success('删除成功');
            return;
        }else{
            $this->error('删除失败');
        }
        $this -> display();
    }
}

 

posted @ 2017-07-28 07:14  夺命雷公狗  阅读(280)  评论(0)    收藏  举报