程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> ThinkPHP實現更新數據實例詳解(demo)

ThinkPHP實現更新數據實例詳解(demo)

編輯: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','[email protected]'));

//第四種方法,傳數組時候,我實現不了。。。

第五種方法:

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

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

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

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

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved