国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目錄
示例
config/routes.php
src/controller/UsersController.php
src/Template/Users/index.php
src/Template/Users/edit.php
輸出
首頁 后端開發(fā) php教程 CakePHP 更新一條記錄

CakePHP 更新一條記錄

Sep 10, 2024 pm 05:25 PM
php cakephp PHP framework

要更新數據庫中的記錄,我們首先需要使用 TableRegistry 類獲取表。我們可以使用 get() 方法從注冊表中獲取實例。 get() 方法將以數據庫表的名稱作為參數?,F在,這個新實例用于獲取我們想要更新的特定記錄。

使用這個新實例調用get()方法,并傳遞主鍵來查找記錄,該記錄將保存在另一個實例中。使用此實例來設置要更新的新值,然后最后使用 TableRegistry 類的實例調用 save() 方法來更新記錄。

示例

在 config/routes.php 文件中進行更改,如以下代碼所示。

config/routes.php

<?php use Cake\Http\Middleware\CsrfProtectionMiddleware;
use Cake\Routing\Route\DashedRoute;
use Cake\Routing\RouteBuilder;
$routes->setRouteClass(DashedRoute::class);
$routes->scope('/', function (RouteBuilder $builder) {
   $builder->registerMiddleware('csrf', new CsrfProtectionMiddleware([
      'httpOnly' => true,
   ]));
   $builder->applyMiddleware('csrf');
   //$builder->connect('/pages',['controller'=>'Pages','action'=>'display', 'home']);
   $builder->connect('/users/edit', ['controller' => 'Users', 'action' => 'edit']);
   $builder->fallbacks();
});

src/Controller/UsersController.php 創(chuàng)建一個 UsersController.php 文件。 將以下代碼復制到控制器文件中。

src/controller/UsersController.php

<?php namespace App\Controller;
   use App\Controller\AppController;
   use Cake\ORM\TableRegistry;
   use Cake\Datasource\ConnectionManager;
   class UsersController extends AppController{
      public function index(){
         $users = TableRegistry::get('users');
         $query = $users->find();
         $this->set('results',$query);
      }
      public function edit($id){
         if($this->request->is('post')){
            $username = $this->request->getData('username');
            $password = $this->request->getData('password');
            $users_table = TableRegistry::get('users');
            $users = $users_table->get($id);
            $users->username = $username;
            $users->password = $password;
            if($users_table->save($users))
            echo "User is udpated";
            $this->setAction('index');
         } else {
            $users_table = TableRegistry::get('users')->find();
            $users = $users_table->where(['id'=>$id])->first();
            $this->set('username',$users->username);
            $this->set('password',$users->password);
            $this->set('id',$id);
         }
      }
   }
?>

創(chuàng)建一個目錄Users at src/Template,如果已經創(chuàng)建則忽略,并在該目錄下創(chuàng)建一個名為index.php的視圖。將以下代碼復制到該文件中。

src/Template/Users/index.php

<a href="add">Add User</a>
"; echo ""; echo ""; echo ""; echo ""; endforeach; ?>
ID Username Password Edit Delete
".$row->id."".$row->username."".$row->password."EditDelete

在 Users 目錄下創(chuàng)建另一個 View 文件,名為 edit.php 并將以下代碼復制到其中。

src/Template/Users/edit.php

<?php echo $this->Form->create(NULL,array('url'=>'/users/edit/'.$id));
   echo $this->Form->control('username',['value'=>$username]);
   echo $this->Form->control('password',['value'=>$password]);
   echo $this->Form->button('Submit');
   echo $this->Form->end();
?>

通過訪問以下 URL 來執(zhí)行上述示例,然后單擊編輯鏈接來編輯記錄。

http://localhost/cakephp4/users

輸出

訪問上述網址后,會顯示users表中的記錄如下 -

After Visiting

點擊編輯按鈕,它將顯示以下屏幕 -

Edit Button

現在,我們將把名稱 CakePHP 更新一條記錄 更新為 CakePHP 更新一條記錄123 并提交詳細信息。顯示的下一個屏幕如下 -

CakePHP 更新一條記錄

以上是CakePHP 更新一條記錄的詳細內容。更多信息請關注PHP中文網其他相關文章!

本站聲明
本文內容由網友自發(fā)貢獻,版權歸原作者所有,本站不承擔相應法律責任。如您發(fā)現有涉嫌抄襲侵權的內容,請聯系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅動的應用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機

Video Face Swap

Video Face Swap

使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

如何在PHP中牢固地處理文件上傳? 如何在PHP中牢固地處理文件上傳? Jul 08, 2025 am 02:37 AM

要安全處理PHP文件上傳需驗證來源與類型、控制文件名與路徑、設置服務器限制并二次處理媒體文件。1.驗證上傳來源通過token防止CSRF并通過finfo_file檢測真實MIME類型使用白名單控制;2.重命名文件為隨機字符串并根據檢測類型決定擴展名存儲至非Web目錄;3.PHP配置限制上傳大小及臨時目錄Nginx/Apache禁止訪問上傳目錄;4.GD庫重新保存圖片清除潛在惡意數據。

您如何按值與PHP中的參考傳遞變量? 您如何按值與PHP中的參考傳遞變量? Jul 08, 2025 am 02:42 AM

InPHP,variablesarepassedbyvaluebydefault,meaningfunctionsorassignmentsreceiveacopyofthedata,whilepassingbyreferenceallowsmodificationstoaffecttheoriginalvariable.1.Whenpassingbyvalue,changestothecopydonotimpacttheoriginal,asshownwhenassigning$b=$aorp

發(fā)電機如何在PHP中工作? 發(fā)電機如何在PHP中工作? Jul 11, 2025 am 03:12 AM

AgeneratorinPHPisamemory-efficientwaytoiterateoverlargedatasetsbyyieldingvaluesoneatatimeinsteadofreturningthemallatonce.1.Generatorsusetheyieldkeywordtoproducevaluesondemand,reducingmemoryusage.2.Theyareusefulforhandlingbigloops,readinglargefiles,or

PHP標頭位置AJAX調用不起作用 PHP標頭位置AJAX調用不起作用 Jul 10, 2025 pm 01:46 PM

AJAX請求中header('Location:...')無效的原因是瀏覽器不會自動執(zhí)行頁面跳轉。因為在AJAX請求中,服務器返回的302狀態(tài)碼和Location頭信息會被作為響應數據處理,而不是觸發(fā)跳轉行為。解決方法有:1.在PHP中返回JSON數據包含跳轉URL;2.在前端AJAX回調中檢查redirect字段并用window.location.href手動跳轉;3.確保PHP輸出僅為JSON避免解析失敗;4.處理跨域問題需設置合適的CORS頭;5.防止緩存干擾可加時間戳或設置cache:f

如何防止PHP中的會話劫持? 如何防止PHP中的會話劫持? Jul 11, 2025 am 03:15 AM

要防止PHP中的會話劫持,需采取以下措施:1.使用HTTPS加密傳輸并在php.ini中設置session.cookie_secure=1;2.設置安全Cookie屬性,包括httponly、secure和samesite;3.在用戶登錄或權限變更時調用session_regenerate_id(true)更換SessionID;4.限制Session生命周期,合理配置gc_maxlifetime并記錄用戶活動時間;5.禁止將SessionID暴露在URL中,設置session.use_only

如何用urlencode在PHP中編碼字符串 如何用urlencode在PHP中編碼字符串 Jul 11, 2025 am 03:22 AM

urlencode()函數用于將字符串編碼為URL安全格式,其中非字母數字字符(除-、_和.外)會被替換為百分號后跟兩位十六進制數的形式。例如,空格轉為 號,感嘆號轉為!,而中文字符則轉換為其UTF-8編碼形式。使用時應僅對參數值進行編碼,而非整個URL,以避免破壞URL結構。對于URL的其他部分如路徑段,應使用rawurlencode()函數,其將空格轉為 。處理數組參數時可使用http_build_query()自動編碼,或手動對每個值調用urlencode()以確保安全傳輸數據。正

如何通過php中的索引訪問字符串中的字符 如何通過php中的索引訪問字符串中的字符 Jul 12, 2025 am 03:15 AM

在PHP中獲取字符串特定索引字符可用方括號或花括號,但推薦方括號;索引從0開始,超出范圍訪問返回空值,不可賦值;處理多字節(jié)字符需用mb_substr。例如:$str="hello";echo$str[0];輸出h;而中文等字符需用mb_substr($str,1,1)獲取正確結果;實際應用中循環(huán)訪問前應檢查字符串長度,動態(tài)字符串需驗證有效性,多語言項目建議統一使用多字節(jié)安全函數。

php獲得字符串的第一個N字符 php獲得字符串的第一個N字符 Jul 11, 2025 am 03:17 AM

在PHP中取字符串前N個字符可用substr()或mb_substr(),具體步驟如下:1.使用substr($string,0,N)截取前N個字符,適用于ASCII字符且簡單高效;2.處理多字節(jié)字符(如中文)時應使用mb_substr($string,0,N,'UTF-8'),并確保啟用mbstring擴展;3.若字符串含HTML或空白字符,應先用strip_tags()去除標簽、trim()清理空格,再截取以保證結果干凈。

See all articles