Diferencia entre revisiones de «Login»

De KumbiaPHP Framework Wiki
Línea 80: Línea 80:
  
  
* La vista: '''ingresar.phtml''' (crea una carpeta en /views/ llamada usuarios, quedando asi /views/usuarios/ y colocas la vista ahi)
+
* La vista: '''ingresar.phtml''' (crea una carpeta en /views/ llamada usuarios, quedando asi /views/usuarios/ y coloca la vista ahi)
 
<source lang=php>
 
<source lang=php>
 
<?php View::content(); ?>
 
<?php View::content(); ?>

Revisión del 00:45 14 jun 2010

Tomandose en cuenta que en muchas app web las sesiones de login es una parte fundamental, este es un sencillo y basico ejemplo de un Login en KumbiaPHP Framework. Esta practica esta basada para la version 1.0 Spirit beta1.

Vamos a crear una tabla en la base de datos (la base de datos test para esta practica) llamada usuarios.

  • La tabla: usuarios
--
-- Base de datos: `test`
--

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `usuarios`
--

CREATE TABLE IF NOT EXISTS `usuarios` (
  `id` int(2) NOT NULL AUTO_INCREMENT,
  `usuario` varchar(10) NOT NULL,
  `clave` varchar(10) NOT NULL,
  `nivel` int(1) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;

--
-- Volcar la base de datos para la tabla `usuarios`
--

INSERT INTO `usuarios` (`id`, `usuario`, `clave`, `nivel`) VALUES
(1, 'jose', '123', 1);


  • El modelo: usuarios.php
<?php
	class Usuarios extends ActiveRecord
	{
		
	}
?>


  • El controlador: usuarios_controller.php
<?php
    
    class UsuariosController extends ApplicationController
    {
	
	public function index() 
	{
	    
	}
	
	function ingresar()
	{
            Load::lib('auth');
	    
            if ($this->has_post("usuario","clave"))
	    {
		$usuario = $this->post("usuario");
		$pwd = $this->post("clave");
                $auth = new Auth("model", "class: usuarios", "usuario: $usuario", "clave: $pwd");
                    
                if ($auth->authenticate())
                {
                    Flash::success("Correcto");
                } 
                else 
                {
                    Flash::error("Falló");
                }
            }
        }
    }
?>


  • La vista: ingresar.phtml (crea una carpeta en /views/ llamada usuarios, quedando asi /views/usuarios/ y coloca la vista ahi)
<?php View::content(); ?>

<div id="login">
  <?php echo form_tag("usuarios/ingresar"); ?>
  <div id="titulo"><h3>Inicio de Sesion</h3></div>
  <div class="dato-form">
    <div class="etiqueta"><label for="usuario">Usuario:</label></div>
    <div class="texto"><?php echo text_field_tag("usuario","size: 10"); ?></div>
  </div>
  <div class="dato-form">
    <div class="etiqueta"><label for="clave">Clave:</label></div>
    <div class="texto"><?php echo password_field_tag("clave","size: 10"); ?></div>
  </div>
  <div class="dato-form">
    <?php echo submit_tag("Ingresar","class: boton"); ?>
  </div>
  <?php echo end_form_tag(); ?></p>
</div>

Eso es todo, cargas la vista de login la cual seria: http://localhost/rutamicarpetakumbiaphp/app_login/usuarios/ingresar

Descarga

Descarga: app_login para el core del beta1 de Spirit v1.0