ThinkPHP实现更新数据实例详解(demo)

5年以前  |  阅读数:869 次  |  编程语言:PHP 

在没介绍正文之前先给大家介绍下数据更新方法支持的连贯操作方法有:

在上一篇文章中我们实现了数据的删除和批量删除,这一篇文章我们将实现数据的更新。

  首先依然是预期效果图:

  

点击修改后进入modi.html页面,然后进行修改,如此处修改了真实姓名这一属性:

点击保存:

  以上是要实现的效果,下面是实现的具体代码了:

  首先依然是视图内的代码:


    <form role="form" method="post" action="__MODULE__/Admin/User/doAdd">
    <div class="input-group"> <span class="input-group-addon">用<img src="__PUBLIC__/end/images/em.png" alt="" width="6" height="20">户<img src="__PUBLIC__/end/images/em.png" alt="" width="6" height="20">名:</span>
    <input type="text" class="form-control" placeholder="" name="username">
    </div>
    <div class="input-group "> <span class="input-group-addon" for="inputWarning1">真实姓名:</span>
    <input type="text" class="form-control" placeholder="" id="input" name="realname">
    </div>
    <div class="input-group"> <span class="input-group-addon">手机号码:</span>
    <input type="text" class="form-control" placeholder="" name="telphone">
    </div>
    <div class="input-group"> <span class="input-group-addon">电子邮箱:</span>
    <input type="text" class="form-control" placeholder="" name="email">
    </div>
    <div class="input-group"> <span class="input-group-addon">添加时间:</span>
    <input type="text" class="form-control" placeholder="2014-05-22" name="resgistertime">
    </div>
    <div class="input-group"> <span class="input-group-addon">设置密码:</span>
    <input type="text" class="form-control" placeholder="123456" name="password">
    </div>
    <div class="input-group"> <span class="input-group-addon">确认密码:</span>
    <input type="text" class="form-control" placeholder="123456" name="repassword">
    </div>
    <div class="input-group">
    <button type="submit" class="btn btn-primary ">   保<img src="__PUBLIC__/end/images/em.png" alt="" width="20" height="20">存  </button>
    </div>
    </form>

  接下来是控制器:需要说明的是这里需要对未修改前的值进行一下写入,主要是为了方便用户备忘,因此需要进行一个if分支的判断:


    public function modi(){
    if (IS_POST) {
    $adminUsersModel = D("adminUsers");
    $adminUsersModel->create();
    // var_dump($adminUsersModel);
    // exit("创建成功!");
    if($adminUsersModel->save()){ 
    $this->success("修改成功", U("Admin/User/lists"));
    }
    else {
    $this->error($adminUsersModel->getError());
    }
    }
    else {
    $id = isset($_GET['id']) ? intval($_GET['id']) : '';
    if ($id == '') {
    exit("bad param! 请输入id");
    }
    $adminUsersModel=D("adminUsers");
    $adminUsers=$adminUsersModel->find($id);
    //var_dump($adminUsers);
    $this->assign("adminUsers", $adminUsers);
    $this->display();
    }
    }

下面给大家介绍下thinkphp更新数据库的五种方法

第一种方法:

$模型->where('id=1')->save($data);

第二种方法:

$模型->where('id=1')->data($data)->save();

第三种方法:

$模型->create();

$模型->save();

表单中必须包含一个以主键为名称的隐藏域

第四种方法:

$模型->where('id=5')->setField('name','ThinkPHP');

$模型->where('id=5')->setField(array('name','email'),array('TP','TP@163.com'));

//第四种方法,传数组时候,我实现不了。。。

第五种方法:

$模型->setInc('score','id=5',3); // 积分加3

$模型->setInc('score','id=5'); // 积分加1

$模型->setDec('score','id=5',5); // 积分减5

$模型->setDec('score','id=5'); // 积分减1

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例