Maison > cadre php > PensezPHP > Comment modifier les données de la page actuelle dans thinkphp

Comment modifier les données de la page actuelle dans thinkphp

PHPz
Libérer: 2023-04-11 15:36:09
original
657 Les gens l'ont consulté

ThinkPHP是一个优秀的PHP框架,具有用户友好的开发环境和完善的文档。使用ThinkPHP有一个非常便捷的功能:在当前页面修改数据库中的数据,下面我们来介绍具体的实现方法。

首先,在你的ThinkPHP项目中找到需要修改数据的页面,这里我们以index方法为例:

public function index()
{
    //查询数据
    $list = Db::name('test')->select();
    //将数据传递到模板
    $this->assign('list', $list);
    return $this->fetch();
}
Copier après la connexion

以上代码会查询test表中所有的数据,并将查询结果传递到模板中。接下来,我们需要在模板中添加修改数据的按钮:

<table>
    <tr>
        <th>ID</th>
        <th>姓名</th>
        <th>年龄</th>
        <th>操作</th>
    </tr>
    {volist name='list' id='vo'}
    <tr>
        <td>{$vo.id}</td>
        <td>{$vo.name}</td>
        <td>{$vo.age}</td>
        <td><a href="{:url(&#39;edit&#39;, [&#39;id&#39;=>$vo.id])}">修改</a></td>
    </tr>
    {/volist}
</table>
Copier après la connexion

以上代码会在页面上显示test表中所有的数据,并为每一行添加了一个“修改”按钮。点击“修改”按钮会跳转到edit方法中:

public function edit($id)
{
    //根据ID查询数据
    $data = Db::name('test')->where('id', $id)->find();
    if(!$data) {
        $this->error('数据不存在');
    }
    //将数据传递到模板
    $this->assign('data', $data);
    return $this->fetch();
}
Copier après la connexion

以上代码会根据ID查询test表中的一条数据,并将查询结果传递到模板中。接下来,在模板中添加表单,实现对数据的修改:

<form method="post" action="{:url(&#39;update&#39;)}">
    <input type="hidden" name="id" value="{$data.id}" />
    <div>
        <label>姓名</label>
        <input type="text" name="name" value="{$data.name}" />
    </div>
    <div>
        <label>年龄</label>
        <input type="text" name="age" value="{$data.age}" />
    </div>
    <button type="submit">提交修改</button>
</form>
Copier après la connexion

以上代码会在页面上显示一个表单,其中包含要修改的数据。提交修改后,数据会被发送到update方法中:

public function update()
{
    //接收表单提交的数据
    $id = input('post.id');
    $name = input('post.name');
    $age = input('post.age');
    //更新数据
    $update = Db::name('test')->where('id', $id)->update(['name'=>$name, 'age'=>$age]);
    if($update) {
        $this->success('修改成功');
    } else {
        $this->error('修改失败');
    }
}
Copier après la connexion

以上代码会根据表单提交的数据更新test表中的一条数据,并返回修改成功或失败的提示。

综上所述,使用ThinkPHP实现在当前页面修改数据库中的数据非常便利,只需要在页面中添加修改按钮和表单,再编写相应的方法即可。

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal