Maison > développement back-end > tutoriel php > CakePHP Afficher un enregistrement

CakePHP Afficher un enregistrement

王林
Libérer: 2024-09-10 17:25:46
original
551 Les gens l'ont consulté

Pour afficher les enregistrements de la base de données, nous devons d'abord nous procurer une table à l'aide de la classe TableRegistry. Nous pouvons récupérer l'instance hors du registre en utilisant la méthode get(). La méthode get() prendra le nom de la table de la base de données comme argument.

Maintenant, cette nouvelle instance est utilisée pour rechercher des enregistrements dans la base de données à l'aide de la méthode find(). Cette méthode renverra tous les enregistrements de la table demandée.

Exemple

Apportez des modifications au fichier config/routes.php comme indiqué dans le code suivant.

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', ['controller' => 'Users', 'action' => 'index']);
   $builder->fallbacks();
});
Copier après la connexion

Créez un fichier UsersController.php dans src/Controller/UsersController.php. Copiez le code suivant dans le fichier du contrôleur.

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);
      }
   }
?>
Copier après la connexion

Créez un répertoire Utilisateurs dans src/Template, ignorez s'il est déjà créé, et sous ce répertoire, créez un fichier View appelé index.php . Copiez le code suivant dans ce fichier.

src/Template/Users/index.ctp

<a href="add">Add User</a>
<table>
   <tr>
      <td>ID</td>
      <td>Username</td>
      <td>Password</td>
      <td>Edit</td>
      <td>Delete</td>
   </tr>
   <?php
      foreach ($results as $row):
      echo "<tr><td>".$row->id."</td>";
      echo "<td<".$row-<username."</td>";
      echo "<td>".$row->password."</td>";
      echo "<td><a href='".$this-<Url->build(["controller" => "Users","action" => "edit",$row->id])."'>Edit</a></td>";
      echo "<td><a href='".$this->Url->build(["controller" => "Users","action" => "delete",$row->id])."'>Delete</a></td></tr>";
      endforeach;
   ?>
</table>
Copier après la connexion

Exécutez l'exemple ci-dessus en visitant l'URL suivante http://localhost/cakephp4/users

Sortie

Lors de l'exécution, l'URL ci-dessus vous donnera le résultat suivant.

Upon Execution

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!

Étiquettes associées:
source:php
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