Codeigniter 4🔥 [25.- paginador]
En este tutorial vamos a trabajar con la paginación en otras palabras le vamos a poner un paginador a nuestros registros para que se amontonen tanto, ademas es indispensable colocar paginadores para evitar que se sobrecarguen las consultas a nuestra base de datos.
Codigo en github.com: https://github.com/programadornovato/codeigniter4/commit/1f14efc1ac544172548fb0ddc39dcec14cb4caaf
//app/Controllers/Micontrolador.php <?php namespace App\Controllers; use CodeIgniter\Controller; use App\Models\UserModel; class Micontrolador extends BaseController { public function __construct(){ helper('form'); } public function guarda(){ $userModel=new UserModel($db); $request= \Config\Services::request(); $data=array( 'name'=>$request->getPostGet('name'), 'email'=>$request->getPostGet('email'), ); if($request->getPostGet('id')){ $data['id']=$request->getPostGet('id'); } if($userModel->save($data)===false){ var_dump($userModel->errors()); } if($request->getPostGet('id')){ $users=$userModel->find([$request->getPostGet('id')]); $users=array('users'=>$users); $estructura=view('estructura/header').view('estructura/formulario',$users); } else{ $users=$userModel->findAll(); $users=array('users'=>$users); $estructura=view('estructura/header').view('estructura/body',$users); } return $estructura; } public function editar(){ $userModel=new UserModel($db); $request= \Config\Services::request(); if($request->getPostGet('id')){ $id=$request->getPostGet('id'); }else{ $id=$request->uri->getSegment(3); } $users=$userModel->find([$id]); $users=array('users'=>$users); $estructura=view('estructura/header').view('estructura/formulario',$users); return $estructura; } public function borrar(){ $userModel=new UserModel($db); $request= \Config\Services::request(); if($request->getPostGet('id')){ $id=$request->getPostGet('id'); }else{ $id=$request->uri->getSegment(3); } $userModel->delete($id); $users=$userModel->findAll(); $users=array('users'=>$users); $estructura=view('estructura/header').view('estructura/body',$users); return $estructura; } public function formulario(){ $estructura=view('estructura/header').view('estructura/formulario'); return $estructura; } public function index() { $userModel=new UserModel($db); $datos=$userModel->paginate(10); $paginador=$userModel->pager; $paginador->setPath('ci4/'); $datos=array('users'=>$datos,'paginador'=>$paginador); $estructura=view('estructura/header').view('estructura/body',$datos); return $estructura; } //-------------------------------------------------------------------- } //app/Views/estructura/body.php <body> <div class="container"> <div class="row"> <a href="<?php echo base_url(); ?>nuevo" class="btn btn-info" role="button" >Nuevo</a> </div> <div class="row"> <table class="table"> <tr> <th scope="col">id</th> <th scope="col">name</th> <th scope="col">email</th> <th scope="col">deleted</th> <th scope="col">acciones</th> </tr> <?php ?> <? if($users): ?> <?php foreach ($users as $user): ?> <?= "<tr scope='row' >";?> <?= "<td>".$user['id']."</td>";?> <?= "<td>".$user['name']."</td>";?> <?= "<td>".$user['email']."</td>";?> <?= "<td>".$user['deleted']."</td>";?> <td> <a href="<?php echo base_url(); ?>micontrolador/editar/<?php echo $user['id']; ?>" class="btn btn-warning" role="button" ><i class="fa fa-pencil-square-o"></i></a> <a href="<?php echo base_url(); ?>micontrolador/borrar/<?php echo $user['id']; ?>" class="btn btn-danger" role="button" ><i class="fa fa-trash"></i></a> </td> <?php endforeach; ?> <? endif; ?> </table> <?php echo $paginador->links(); ?> </div> </div> </body> </html>
Guia oficial codeigniter: https://codeigniter4.github.io/userguide/libraries/pagination.html
#Codeigniter4 #php7 #backend #Codeigniter #php .
? Esta lista de reproducción: https://www.youtube.com/playlist?list=PLCTD_CpMeEKTFN5TDeOP-wP_hU0_9VoWg
.
Codigos en gdrive: https://drive.google.com/file/d/1awbG6jI40IO0N68fgjLUwNFpsTC3wIHj/view?usp=sharing .
Gracias por apoyar este canal: https://www.patreon.com/programadornovato?fan_landing=true .
? Facebook: https://facebook.com/ProgramadorNovatoOficial
? Twitter: https://twitter.com/programadornova
? Linkedin: https://www.linkedin.com/in/programadornovato/
? Instagram: https://www.instagram.com/programadornovato/