首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Thinkphp5学习013-项目案例-编辑学生的控制器部分代码

Thinkphp5学习013-项目案例-编辑学生的控制器部分代码

作者头像
哆哆Excel
发布2022-10-25 14:36:34
发布2022-10-25 14:36:34
2680
举报
文章被收录于专栏:哆哆Excel哆哆Excel

Thinkphp5学习013-项目案例-编辑学生的控制器部分代码

一.我们在学生列表all.html的页面中有“编辑”按钮

我们点击它,应该是去传递一个学号去一下方法再find查询数据库,再返回一个edit.htm页面中

我们可以在这个页面中对信息进行修改,再提交,update数据库

二.下面是控制器student.php中的代码

//显示编辑学生的页面

    public function edit($no)

    {

        $data = Db::name('student')->where('no', $no)->find();

        $this->assign('student', $data);

        return $this->fetch();

    }

 //执行编辑操作

    public function do_edit()

    {

        $no = input('post.no');

        $name = input('post.name');

        $sex = input('post.sex');

        $age = input('post.age');

        $data = ['name' => $name, 'sex' => $sex, 'age' => $age];

        try {

            Db::name('student')->where('no', $no)->update($data);

            $this->success('添加成功', 'all');

        } catch (PDOException $ex) {

            $this->error('编辑失败,' . $ex->getMessage());

        }

    }

代码解读:

1.edit(有一个参数),因为我们在点击”编辑”两字时是这样传递的

<a href="{:url('edit')}?no={$row.no}" class="btn btn-primary">编辑</a>

我们也可以写成:

//显示编辑学生的页面

public function edit()

{

    $no = input('get.no');

    $data = Db::name('student')->where('no', $no)->find();

    $this->assign('student', $data);

    return $this->fetch();

}

2.do_edit()实际是执行一个数据库update更新语句

Db::name('student')->where('no', $no)->update($data);

三.测试一下

1.点击编辑

2.查询数据库并返回信息页面

3.编辑信息并提交

4.编辑成功

===今天学习到此===

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-01-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 哆哆Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档