Beta2 Sistema de Login
De KumbiaPHP Framework Wiki
Vamos a hacer uso de la libreria Auth que sirve justamente para facilitar toda esta tarea de autenticacion de usuarios. Suponiendo que tenemos la siguiente tabla:
La aplicacion estara compuesta por un controller (principal_controller) con 2 acciones: index y login. Las 2 vistas correspondientes y el modelo correspondiente asociado con la tabla Usuarios.
- Vista login.phtml. Es solo un formulario que utiliza los helpers de KumbiaPHP Beta2
<?php echo View::content(); ?> <?php echo Form::open("principal/login"); ?> <?php echo Form::label("Usuario","login"); ?> <?php echo Form::text("login"); ?> <?php echo Form::label("Password","password"); ?> <?php echo Form::pass("password"); ?> <?php echo Form::submit("Ingresar"); ?> <?php echo Form::close(); ?>
- Accion 'login' en el controller:
public function login(){ if (Input::hasPost("login","password")){ $pwd = Input::post("password"); $usuario=Input::post("login"); $auth = new Auth("model", "class: usuarios", "login: $usuario", "password: $pwd"); if ($auth->authenticate()) { Router::redirect("principal/index"); } else { Flash::error("Falló"); } } }
Con el if se revisa que lleguen datos via post. Luego se crea una nueva instacia de la clase Auth pasandole como parametros el modelo “usuarios”, y la variables $pwd y $usuario.
if ($auth->authenticate())
Se usa para saber si la auteticacion fue correcta.
if(Auth::is_valid())
Se usa para saber si hay un usuario logueado.
$this->telefono=Auth::get('telefono'); $this->edad=Auth::get('edad');
Se usa para recuperar datos de la tabla Usuarios del usuario logueado.
Auth::destroy_identity();
Se usa para terminar la sesion actual del usuario logueado.


