亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

目次
レコードを挿入
出力

CakePHP データベースの操作

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

CakePHP でデータベースを操作するのは非常に簡(jiǎn)単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。

さらに、config/app_local.php ファイルでデータベースを構(gòu)成する必要もあります。

'Datasources' => [
   'default' => [
      'host' => 'localhost',
      'username' => 'my_app',
      'password' => 'secret',
      'database' => 'my_app',
      'url' => env('DATABASE_URL', null),
   ],
   /*
      * The test connection is used during the test suite.
   */
   'test' => [
      'host' => 'localhost',
      //'port' => 'non_standard_port_number',
      'username' => 'my_app',
      'password' => 'secret',
      'database' => 'test_myapp',
      //'schema' => 'myapp',
   ],
],

デフォルトの接続には次の詳細(xì)があります -

'host' => 'localhost',
   'username' => 'my_app',
   'password' => 'secret',
   'database' => 'my_app',

ホスト、ユーザー名、パスワード、データベースなどの詳細(xì)を好みに応じて変更できます。

完了したら、Datasources オブジェクトの config/app_local.php で更新されていることを確認(rèn)してください。

ここで、上記の詳細(xì)を続けます。phpmyadmin または mysql データベースに移動(dòng)し、以下に示すようにユーザー my_app を作成します。-

My App

必要な権限を付與して保存します。これで、app_local.php に記載されている構(gòu)成に従ってデータベースの詳細(xì)が得られました。 CakePHP ホームページをチェックすると、これが得られるはずです -

App Local

ここで、データベースに次のユーザーのテーブルを作成します。

CREATE TABLE `users` ( 
   `id` int(11) NOT NULL AUTO_INCREMENT,
   `username` varchar(50) NOT NULL, 
   `password` varchar(255) NOT NULL, PRIMARY KEY (`id`) 
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=latin1

レコードを挿入

データベースにレコードを挿入するには、まず TableRegistry クラスを使用してテーブルを取得する必要があります。 get() メソッドを使用して、レジストリからインスタンスを取得できます。 get() メソッドは、データベース テーブルの名前を引數(shù)として受け取ります。

この新しいインスタンスは、新しいエンティティを作成するために使用されます。新しいエンティティのインスタンスに必要な値を設(shè)定します。ここで、データベースに新しいレコードを挿入する 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/add', ['controller' => 'Users', 'action' => 'add']);
   $builder->fallbacks();
});

src/Controller/UsersController.php に UsersController.php ファイルを作成します。 コントローラー ファイルに次のコードをコピーします。

src/controller/UsersController.php

<?php namespace App\Controller;
use App\Controller\AppController;
use Cake\ORM\TableRegistry;
use Cake\Datasource\ConnectionManager;
use Cake\Auth\DefaultPasswordHasher;
class UsersController extends AppController{
   public function add(){
      if($this->request->is('post')){
         $username = $this->request->getData('username');
         $hashPswdObj = new DefaultPasswordHasher;
         $password = $hashPswdObj->hash($this->request->getData('password'));
         $users_table = TableRegistry::get('users');
         $users = $users_table->newEntity($this->request->getData());
         $users->username = $username;
         $users->password = $password;
         $this->set('users', $users);
         if($users_table->save($users))
         echo "User is added.";
      }
   }
}
?>

src/Template にディレクトリ Users を作成し、そのディレクトリの下に add.php という名前の View ファイルを作成します。そのファイルに次のコードをコピーします。

src/Template/Users/add.php

<?php echo $this->Form->create(NULL,array('url'=>'/users/add'));
   echo $this->Form->control('username');
   echo $this->Form->control('password');
   echo $this->Form->button('Submit');
   echo $this->Form->end();
?>

次の URL にアクセスして、上記の例を?qū)g行します。 http://localhost/cakephp4/users/add

出力

実行すると、次の出力が表示されます。

CakePHP データベースの操作

データは以下に示すように users テーブルに保存されます -

Show All

以上がCakePHP データベースの操作の詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國(guó)語(yǔ) Web サイトの他の関連記事を參照してください。

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見(jiàn)つけた場(chǎng)合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫(huà)像を無(wú)料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫(xiě)真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

寫(xiě)真から衣服を削除するオンライン AI ツール。

Stock Market GPT

Stock Market GPT

AIを活用した投資調(diào)査により賢明な意思決定を?qū)g現(xiàn)

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無(wú)料のコードエディター

SublimeText3 中國(guó)語(yǔ)版

SublimeText3 中國(guó)語(yǔ)版

中國(guó)語(yǔ)版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強(qiáng)力な PHP 統(tǒng)合開(kāi)発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開(kāi)発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

ホットトピック

Mantianxing ComicsフルバージョンEntann_mantianxingコミック広告スペシャルエディションリンク Mantianxing ComicsフルバージョンEntann_mantianxingコミック広告スペシャルエディションリンク Sep 28, 2025 am 10:30 AM

Mantianxing Comicのフルバージョンはhttps://www.mantianxingmh.comです。このプラットフォームは、情熱、愛(ài)、サスペンス、サイエンスフィクションなどのさまざまなテーマをカバーし、豊富なリソースとタイムリーな更新と分類(lèi)された検索をサポートしています。高解像度の畫(huà)質(zhì)、複數(shù)のページターニングモード、カスタムバックグラウンドと輝度の調(diào)整を提供し、読書(shū)體験を最適化するための目の保護(hù)モードを備えています。ユーザーは、本棚を作成し、レコードの読み取りを保存し、オフラインをダウンロードし、クロスデバイスの同期の進(jìn)行狀況を達(dá)成できます。

PHPを使用してファイルを削除する方法は? PHPを使用してファイルを削除する方法は? Sep 27, 2025 am 06:08 AM

Unlink()関數(shù)を使用して、PHPでファイルを削除します。ファイルパスが正しく、サーバーに権限の書(shū)き込みがあることを確認(rèn)する必要があります。削除する前に、ファイルが存在することを確認(rèn)し、パスが悪意を持って操作されないようにする必要があります。

PHPでオブジェクト指向プログラミング(OOP)を使用する方法は? PHPでオブジェクト指向プログラミング(OOP)を使用する方法は? Sep 28, 2025 am 03:26 AM

oopinphporgasizeIntoreUsableClassEsandobjects.1.ClassesDefinePropertiesAndMethods、InstantiatedVia $ this.2.constructors(__ construct)initializeObjectProperties.3.AccesSmodifiers(Public、Private、Protected)Controlvisibility.4.Inheritance

PHP mysqlで最後に挿入されたIDを取得するにはどうすればよいですか? PHP mysqlで最後に挿入されたIDを取得するにはどうすればよいですか? Sep 28, 2025 am 05:57 AM

mysqli_insert_id()(手順スタイル)、$ mysqli-> insert_id(オブジェクトスタイル)、または$ pdo-> lastinsertid()()を使用して、最後に挿入されたIDを取得し、同じ接続ですぐに呼び出される必要があります。

PHPで最終クラスとメソッドを使用する方法は? PHPで最終クラスとメソッドを使用する方法は? Sep 28, 2025 am 05:55 AM

finalClassESSANDMETHODSINPPREVENTINTANCHENDOVERIDINGTOPROTECTCRITICLICODE.2.AFINALCLASSCANNOTBEEXTEDED.3.AFINALMETHODCANNOTBEOVERDINDCANTCONSTIMPRENTIONSACROSSSUBCLASSES.4.USEFINFINEFORESTURET

PHPでHTMLタグをエコーする方法 PHPでHTMLタグをエコーする方法 Sep 29, 2025 am 02:25 AM

PHPにHTMLを出力するために、単一の引用符または脫出した二重引用符を使用します。屬性の引用符の競(jìng)合を避けるために、文字列を単一の引用符で巻くことをお?jiǎng)幛幛筏蓼埂?dòng)的なコンテンツは、可変スプライシングまたはHeredoc構(gòu)文と組み合わせて生成できます。

PHPでシングルトンクラスを作成する方法は? PHPでシングルトンクラスを作成する方法は? Sep 27, 2025 am 06:18 AM

asingletonclassinphensuresonlyonlyOneinStanceSistsistsistcrivateConstructor、cloninging andunserialization、およびProviding aglovididing agloviding aglablaCesspopeastaticmethodthaturturnturturntherinsingLeinStanceStoredOredOREDINAPRIVATETATITATITY。

PHPでGet Request変數(shù)を操作する方法は? PHPでGet Request変數(shù)を操作する方法は? Sep 29, 2025 am 01:30 AM

$ _gettoaccessurlquelystringvariablesinphpを使用します。

See all articles