Codeigniter 4🔥 [22.- Segmentos de url]
En este tutorial vamos a trabajar con los segmentos y es tan facil como esto: http://localhost/ci4/micontrolador/editar/11 Donde : micontrolador es el segmento1 editar es el segmento2 11 es el segmento3 Y asi de facil Codigo en Github.com: https://github.com/programadornovato/codeigniter4/commit/e6dac919694f0f76889f8553b0a1979264aa7325
//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); //$users=$userModel->find([1,2]); //$users=$userModel->findAll(); //$users=$userModel->where('name','maria')->findAll(); //$users=$userModel->findAll(2,3); //$users=$userModel->withDeleted()->findAll(); /* $data=[ 'name'=>"programador1", 'email'=>"[email protected]" ]; $userModel->insert($data); $data=[ 'name'=>"programador2", 'email'=>"[email protected]" ]; $userModel->update(10,$data); $data=[ 'name'=>"yo" ]; $userModel->update([2,3],$data); $userModel->whereIn('id',[4,5,10]) ->set(['name'=>'yo tambien']) ->update(); $data=[ 'name'=>"programador11", 'email'=>"[email protected]" ]; $userModel->save($data); $data=[ 'id'=>"12", 'name'=>"programador yo tambien", 'email'=>"[email protected]" ]; $userModel->save($data); */ //$userModel->delete([2,4,5]); //$userModel->where('id',10)->delete(); //$userModel->purgeDeleted(); /* $data=[ 'name'=>"programadorvalido nuevo 2", 'email'=>"[email protected]" ]; if($userModel->save($data)===false){ var_dump($userModel->errors()); } */ /* $users=$userModel->asArray()->where('name','programador11') ->orderBy('id','asc') ->findAll(); var_dump($users); */ $users=$userModel->findAll(); $users=array('users'=>$users); $estructura=view('estructura/header').view('estructura/body',$users); 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 foreach($users as $user){ echo "<tr scope='row' >"; echo "<td>".$user['id']."</td>"; echo "<td>".$user['name']."</td>"; echo "<td>".$user['email']."</td>"; echo "<td>".$user['deleted']."</td>"; echo "<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> <?php echo "</td>"; echo "</tr>"; } ?> </table> </div> </div> </body> </html> //app/Views/estructura/formulario.php <div class="container"> <?php echo form_open('/Micontrolador/guarda'); if(isset($users)){ $name=$users[0]['name']; $email=$users[0]['email']; } else{ $name=""; $email=""; } ?> <div class="form-group"> <?php echo form_label('Nombre','name'); echo form_input(array('name'=>'name','placeholder'=>'Nombre','class'=>'form-control','value'=>$name)); echo "<br>"; echo form_label('Email','email'); echo form_input(array('name'=>'email','placeholder'=>'Email','class'=>'form-control','value'=>$email)); echo "<br>"; echo form_submit('guarda','Guardar','class="btn btn-primary"'); ?> <a href="http://localhost/ci4/" class="btn btn-warning" role="button">Cancelar</a> <?php if(isset($users)){ echo form_hidden('id',$users[0]['id']); } ?> </div> <?php echo form_close(); ?> </div>
Guia oficial codeigniter: https://codeigniter4.github.io/userguide/libraries/uri.html?highlight=segment
#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/