Sunteți pe pagina 1din 19

Desarrollo de un login de

usuarios en CodeIgniter
Por Ing. Diego Angelini

17 de marzo de 2011
15 Comentarios
PHP
Cmo hacer un sistema de login de usuarios, acceso por
usuario y contrasea, en una pgina web PHP desarrollada
con el framework CodeIgniter.
Este es un artculo prctico que nos puede ayudar a aprender algunas tcnicas
de desarrollo en el framework CodeIgniter, adems de darnos una gua til para
la creacin de un sistema que permita loguearse a los usuarios que visitan
nuestra aplicacin web.
El sistema de login es uno de los primeros problemas que querremos resolver
en aplicaciones web. No es ms que un mdulo que identifica a los usuarios
que visitan una pgina web, para implementar un nivel de seguridad por medio
de un nombre de usuario y una clave. Por supuesto, en las aplicaciones
CodeIgniter, uno de nuestros primeros pasos ser desarrollar ese acceso
autenticado. Por ello, nos pondremos manos a la obra para explicar paso por
paso una posible implementacin de un script para facilitar la autenticacin de
usuarios en nuestra pgina web.

Nota: El sistema de login ha sido tratado anteriormente en DesarrolloWeb.com. Claro que, cuando
estamos desarrollando en CodeIgniter, los modos en los que tenemos que enfrentar los problemas

varan un poco con respecto a la programacin tradicional en PHP (sin usar ningn framework). As

pues, os pasamos un par de referencias tiles para poder complementar la presente informacin.

Manual de CodeIgniter

Desarrollo de un sistema de autenticacin en PHP

5 sencillos pasos para crear un sistema


de login en CodeIgniter
Comenzamos listando los pasos que hemos realizado para la construccin de
este sistema de autenticacin de usuarios.
Paso 1: crear el archivo php.php y guardarlo en /application/controllers/
Paso 2: crear el archivo login.php y guardarlo en /application/views/
Paso 3: crear usuarios_model.php y guardarlo en /application/models/
Paso 4: crear la tabla mysql con algunos usuarios de prueba
Paso 5: Importante: pre-cargar automticamente las libreras de CodeIgniter para
base de datos y validaciones de formularios
A continuacin, podis ver los listados de cdigo de cada uno de los scripts que
hemos utilizado. Ms tarde en este mismo artculo, despus de los listados,
podris leer una descripcin de cada uno de estos pasos para la
implementacin.
Paso 1: Cdigo para el controlador
php.php:
<?php

class Php extends CI_Controller {

function login($idioma=null)
{

// $this->config->set_item('language',
'spanish'); // Setear dinmicamente el idioma que deseamos que
ejecute nuestra aplicacin
if(!isset($_POST['maillogin'])){ // Si no recibimos ningn
valor proveniente del formulario, significa que el usuario recin
ingresa.
$this->load->view('login'); // Por lo tanto le
presentamos la pantalla del formulario de ingreso.
}
else{ // Si el usuario ya pas por la
pantalla inicial y presion el botn "Ingresar"
$this->form_validation->set_rules('maillogin','e-
mail','required|valid_email'); // Configuramos las validaciones
ayudandonos con la librera form_validation del Framework Codeigniter
$this->form_validation-
>set_rules('passwordlogin','password','required');
if(($this->form_validation->run()==FALSE)){ // V
erificamos si el usuario super la validacin
$this->load->view('login'); // En
caso que no, volvemos a presentar la pantalla de login
}
else{ // Si ambos
campos fueron correctamente rellanados por el usuario,
$this->load->model('usuarios_model');
$ExisteUsuarioyPassoword=$this->usuarios_model-
>ValidarUsuario($_POST['maillogin'],$_POST['passwordlogin']); // c
omprobamos que el usuario exista en la base de datos y la password
ingresada sea correcta
if($ExisteUsuarioyPassoword){ // La variable
$ExisteUsuarioyPassoword recibe valor TRUE si el usuario existe y
FALSE en caso que no. Este valor lo determina el modelo.
echo "Validacion Ok<br><br><a
href=''>Volver</a>"; // Si el usuario ingres datos de acceso
vlido, imprimos un mensaje de validacin exitosa en pantalla
}
else{ // Si no logr validar
$data['error']="E-mail o password incorrecta, por favor
vuelva a intentar";
$this->load->view('login',$data); // Lo regresamos
a la pantalla de login y pasamos como parmetro el mensaje de error a
presentar en pantalla
}
}
}
}
}
?>
Paso 2: Cdigo para la vista login.php:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Demo del script: Cmo hacer un login de usuarios en php?
</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-
1">
<meta name="description" content="Efecta tus propias pruebas on-line.
Para ejecutarlo en tu sitio necesitas del framework CodeIgniter,
provisto gratis por la empresa de hosting Solo10.com." />
<meta name="keywords" content="php, login, codeigniter, hosting, demo,
web hosting, script, usuarios" />

<link rel="stylesheet" href="http://www.blogdephp.com/script/php-


login.css" type="text/css" media="screen">
<link rel="stylesheet"
href="http://www.blogdephp.com/script/addtoany.min.css"
type="text/css" media="screen">

<!--<link rel="stylesheet" href="../../php-login.css" type="text/css"


media="screen">-->
<meta name="google-site-verification"
content="xWxEFUMgHER4nLx6TAXD9rHFhclvQkEX-RX6qClbszI" />
<script type="text/javascript">

var _gaq = _gaq || [];


_gaq.push(['_setAccount', 'UA-20047775-3']);
_gaq.push(['_trackPageview']);

(function() {
var ga = document.createElement('script'); ga.type =
'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' :
'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(ga, s);
})();

</script>
<meta property="og:title" content="Cmo hacer un login de usuarios en
php y codeigniter? Ver script y demo !" />
<meta property="og:type" content="blog" />
<meta property="og:url"
content="http://www.blogdephp.com/script/php/login/" />
<meta property="og:image"
content="http://www.blogdephp.com/images/php.gif" />
<meta property="og:site_name" content="www.blogdephp.com" />
<meta property="fb:admins" content="100001608753773" />

</head>

<body style="margin-top:0px">
<?php echo form_open('php/login/'); ?>
<div class="Info">
<p class="Titulo"><h1>Demo del script: <a href="/php-
login/">Cmo hacer un login de usuarios en php y codeigniter?
</a></h1></p>
<p> </p>
</div>
<div id="LoginUsuarios">
<div class="fila">
<div class="LoginUsuariosCabecera">E-mail:</div>
<div class="LoginUsuariosDato"><input type="text"
name="maillogin" value="<?= set_value('maillogin'); ?>" size="25"
/></div>
<div class="LoginUsuariosError">
<?
if(isset($error)){
echo "<p>".$error."</p>";
}
echo form_error('maillogin');
?>
</div>
</div>
<div class="fila">
<div class="LoginUsuariosCabecera">Contrasea:</div>
<div class="LoginUsuariosDato"><input type="password"
name="passwordlogin" value="<?= set_value('passwordlogin'); ?>"
size="25" /></div>
<div class="LoginUsuariosError"><?=
form_error('passwordlogin');?></div>
</div>
<div class="fila">
<div class="LoginUsuariosCabecera"></div>
<div class="LoginUsuariosDato"></div>
</div>
<div class="fila">
<div class="LoginUsuariosCabecera"><input type="submit"
value="Ingresar"></div>
<div class="LoginUsuariosDato"></div>
</div>
</div>
</form>
<p> </p>
<div class="Info">
<p><u><h2>Datos de acceso (demo)</h2></u></p>
<p> </p>
<p>(correspondiente a un usuario ya ingresado en la base de
datos)</p>
<p><strong>e-mail</strong>: diego@blogdephp.com</p>
<p><strong>password</strong>: blogdephp</strong></p>
</div>
<p> </p>
<!--<p><iframe src="http://www.facebook.com/plugins/like.php?href=http
%3A%2F%2Fblogdephp.com%2Fscript%2Fphp
%2Flogin&layout=standard&show_faces=true&width=450&action=like&colorsc
heme=light&height=80" scrolling="no" frameborder="0"
style="border:none; overflow:hidden; width:450px; height:50px;"
allowTransparency="true"></iframe></p> -->
<div class="addtoany_share_save_container"><div class="a2a_kit
addtoany_list"><iframe class="addtoany_special_service facebook_like"
src="http://www.facebook.com/plugins/like.php?href=http%3A%2F
%2Fblogdephp.com%2Fphp-login
%2F&layout=button_count&show_faces=false&width=75&action=like&colorsch
eme=light&height=15" frameborder="0" scrolling="no"
style="border:none;overflow:hidden;width:90px;height:20px"></iframe><i
frame class="addtoany_special_service twitter_tweet"
src="http://platform.twitter.com/widgets/tweet_button.html?url=http%3A
%2F%2Fblogdephp.com%2Fphp-login%2F&counturl=http%3A%2F%2Fblogdephp.com
%2Fphp-login%2F&count=horizontal&text=%C2%BFC%C3%B3mo%20hacer%20un
%20login%20de%20usuarios%20en%20Php%20y%20Codeigniter%3F: "
frameborder="0" scrolling="no"
style="border:none;overflow:hidden;width:80px;height:20px"></iframe><a
class="a2a_button_linkedin"
href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F
%2Fblogdephp.com%2Fphp-login%2F&linkname=%C2%BFC%C3%B3mo%20hacer%20un
%20login%20de%20usuarios%20en%20Php%20y%20Codeigniter%3F"
title="LinkedIn" rel="nofollow" target="_blank"><img
src="http://blogdephp.com/wp-content/plugins/add-to-
any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"
border="0" style="margin-right:20px; "/></a><a class="a2a_dd
addtoany_share_save" href="http://www.addtoany.com/share_save"><img
src="http://blogdephp.com/wp-content/plugins/add-to-
any/share_save_171_16.png" width="171" height="16" alt="Share"
border="0"/></a></div>
<script type="text/javascript"><!--
var a2a_config = a2a_config || {};
a2a_localize = {
Share: "Compartir",
Save: "Guardar",
Subscribe: "Suscribirse",
Email: "E-mail",
Bookmark: "Marcador",
ShowAll: "Mostrar todo",
ShowLess: "Mostrar menos",
FindServices: "Buscar servicios(s)",
FindAnyServiceToAddTo: "Buscar servicio",
PoweredBy: "Servicio ofrecido por",
ShareViaEmail: "Compartir por e-mail",
SubscribeViaEmail: "Suscribirse por e-mail",
BookmarkInYourBrowser: "Agregar a marcadores de tu navegador",
BookmarkInstructions: "Presione Ctrl+D o Cmd+D para marcar esta
pagina",
AddToYourFavorites: "Agregar a favoritos",
SendFromWebOrProgram: "Enviar de cualquier direccin de e-mail o
programa de e-mail",
EmailProgram: "Programa de e-mail"
};
a2a_config.linkname="Cmo hacer un login de usuarios en Php y
Codeigniter?";
a2a_config.linkurl="http://blogdephp.com/php-login/";
//--></script><script type="text/javascript"
src="http://static.addtoany.com/menu/page.js"></script>
<div class="Info">
<p><u><h2>Requerimientos necesarios en tu web hosting para poder
ejecutar el script</h2></u></p>
<p> </p>
<p>Para poder implementar este script de login, se requiere el
framework de php "Codeigniter"</p>
<p>(esta maravillosa herramienta nos ayuda a ahorrar mucho tiempo y
esfuerzo en nuestros trabajos de programacin php).</p>
<p> </p>
<p>La empresa <a
href="http://www.solo10.com/productos/WebHostingLinux/?
safblogdephp">Solo10.com</a>, cuando contratas un paquete de hosting
anual desde u$s 49.95,</p>
<p>te ofrece la instalacin y configuracin inicial del Codeigniter
gratis :-)</p>
<p> </p>
<p>Este blog y demo se encuentran alojados en los servidores de
Solo10.com.</p>
<p>Te recomiendo el <a
href="http://www.solo10.com/productos/WebHostingLinux/?
safblogdephp">servicio de hosting</a> que ofrece esta empresa de
hablahispana!</p>
</div>
<p> </p>
<div class="Info">
<p><a href="http://www.blogdephp.com/">Ver ms artculos y scripts
de php y codeigniter</a></p>
</div>
</body>
</html>
Paso 3: Cdigo para el modelo
usuarios_model.php
<?php
class Usuarios_model extends CI_Model{
function ValidarUsuario($email,$password){ // Consulta
Mysql para buscar en la tabla Usuario aquellos usuarios que coincidan
con el mail y password ingresados en pantalla de login
$query = $this->db->where('Usuario',$email); // La consulta
se efecta mediante Active Record. Una manera alternativa, y en
lenguaje ms sencillo, de generar las consultas Sql.
$query = $this->db->where('Password',$password);
$query = $this->db->get('Usuarios');
return $query->row(); // Devolvemos al controlador la fila
que coincide con la bsqueda. (FALSE en caso que no existir
coincidencias)
}
}
?>
Paso 4: Consulta Mysql para crear la
tabla de usuarios
CREATE TABLE `Usuarios` ( `Id` INT NOT NULL AUTO_INCREMENT , `Usuario`
VARCHAR( 50 ) NOT NULL , `Password` VARCHAR( 50 ) NOT NULL , PRIMARY
KEY ( `Id` ) ) ENGINE = MYISAM ; INSERT INTO `Usuarios` ( `Id` ,
`Usuario` , `Password` ) VALUES ( NULL , 'diego@blogdephp.com',
'blogdephp' );
Paso 5: Importante: pre-cargar libreras
de CodeIgniter para base de datos y
validaciones de formularios
Abrir el archivo autoload.php, ubicado en la ruta /application/config/" y localizar
la siguiente lnea:
$autoload['libraries']=array();
Reemplazarla por:

$autoload['libraries'] = array('database','form_validation');
(esto es indispensable para poder utilizar los mtodos de validaciones que nos
brinda CodeIgniter).

Nota: La gran ventaja de cargar una librera desde el archivo autoload.php es que luego la tenemos
disponible, y podemos utilizarla, desde cualquier parte del Framework. De lo contrario, tendriamos

que cargar la librera en todos los controladores en que la necesitemos (ocasionando redundancia

de cdigo).

Por qu es importante un sistema de


login de usuarios
Como habis podido comprobar, se trata de un script que, mediante pocas
lneas de cdigo, permite configurar el sistema de autenticacin de usuarios en
tu propio sitio web.
Sobra decir que esta implementacin es sumamente importante en cualquier
proyecto y la necesitaremos en cualquier web que desarrollemos, por simple
que sea nuestra aplicacin. Esto es debido a que en cualquier sitio web,
medianamente avanzado, seguramente existe cierta informacin y funciones
que nos interesa ofrecer nicamente a usuarios registrados y no al resto del
pblico. As como posibilitar que un usuario tenga guardada cierta informacin
y sta est asociada a su cuenta, slo visible por l.

Pensemos en la posibilidad de estar realizando un sistema web para un


peridico. En ese caso interesar que los periodistas puedan acceder al
sistema (mediante un usuario y clave) y puedan dar de alta noticias u otro tipo
de artculos. Por supuesto, esta funcin debera ser accesible nicamente por
periodistas debidamente autenticados y no por otro tipo de usuario que pueda
acceder a la web del medio de comunicacin.
Funcionalidades deseables en un sistema
de autenticacin
A continuacin veamos una lista de las cosas que querremos tener disponibles
en un sistema de login de usuarios.
Permitir acceso a determinada informacin y funcionalidades, pero que ste se
otorgue solamente a determinados usuarios, aquellos que se encuentren en una tabla de
la base de datos de nuestra aplicacin web. Nosotros trabajaremos con MySQL.
Enviar un mensaje de error cuando no se ha indicado algn campo de la pantalla
de acceso autenticado.
Enviar un mensaje de error cuando los datos cumplimentados para el login no
coinciden con ningn usuario de los existentes en la base de datos.
Recordar los datos que tena escritos el visitante, cuando no supera el login y se le
vuelve a mosotrar la pantalla de acceso autenticado.
Explicacin tcnica de los scripts
Como pueden observar, los scripts de este sistema de login (listados al
principio del artculo) se encuentran comentados para una mayor facilidad de
comprensin. Existen comentarios para cada una de las sentencias
importantes, que relatan de manera resumida cada una de las funciones que
cumplen. No obstante, intentaremos ahora realizar una explicacin general de
cmo funciona el sistema desarrollado, de forma que las personas lo puedan
entender tan fcil como si fuera un cuento :-)
Comencemos con la pantalla de acceso, que est en la pgina login.php,
donde el usuario podr escribir sus datos de autenticacin (usuario y
password). Recordemos que en CodeIgniter todo lo que se basa en la
interaccin con el usuario (entrada y salida de datos) se debe desarrollar por
medio de las las vistas (capa presentacin).

Aqu la sentencia importante es la siguiente:

<?php echo form_open('php/login/'); ?>


Con ello se genera el formulario HTML para hacer el login y especificamos que
sus datos deben ser enviados y procesados por el mtodo login del
controlador php. La funcin form_open es propia de CodeIgniter.
Otro punto importante a tener en cuenta est en la vista, en el momento en el
que creamos los campos (osea, las cajas de texto donde el usuario podr
escribir los datos de acceso para enviarlos a la aplicacin):

<input type="text" name="maillogin" value="<?= set_value('maillogin');


?>" size="25" />
Aqu estamos creando un campo INPUT (de texto) llamado maillogin. La
funcin set_value sirve para recordar los datos rellenados por el usuario, en
caso de que su acceso no sea vlido y tengamos que volver a mostrar la
pantalla de acceso. Este simple detalle ofrece un valor aadido que permite
una mayor usabilidad en nuestra aplicacin.

Ahora podemos analizar el controlador php.php. Sin lugar a dudas, aqu


reside la parte ms compleja del script. Por esa razn se han colocado
comentarios para cada una de las lneas de cdigo, lo que espero mejore su
comprensin. Te sugiero comenzar leyendo directamente los comentarios en el
cdigo fuente.

El controlador (php.php) toma los datos que nos envan del formulario de
autenticacin y realiza las correspondientes validaciones. Tambin consulta al
modelo (usuarios_model.php) si el usuario y clave indicados existen en algn
registro de la tabla de usuarios, es decir, su el usuario y clave son vlidos. Por
ltimo, este controlador decide si el usuario indicado pueda o no entrar a la
aplicacin, y comunica su decisin a la vista (login.php), que es la encargada
de mostrar la respuesta correspondiente en la pgina.

Antes de acabar, me parece conveniente remarcar algunas sentencias y


declaraciones puntuales que son elementales en PHP, y que por ello servirn
en toda aplicacin web que desarrolles.

$_POST['maillogin']
(Esto accede a los valores llegados del formulario en el campo "maillogin")
$this->load->model('usuarios_model');
(Esto es una carga del modelo de usuarios "usuarios_model", de modo que se
puedan utilizar sus recursos en los controladores.)
$this->usuarios_model->ValidarUsuario($_POST['maillogin'],
$_POST['passwordlogin']);
(Esto es una llamada para ejecutar el mtodo ValidarUsuario que hay en el
modelo usuarios_model. En el que le pasamos dos parmetros).
Tenemos pensado mejorar este sistema de autenticacin de usuarios en el
futuro, con cosas como implementar que un usuarios pueda acceder a pginas
exclusivas con informacin nicamente vlida y accesible por l. Y cmo
acceder a la pgina sin tener que escribir en cada acceso sus sus de login, es
decir, que los tenga que escribir una nica vez y que la aplicacin los recuerde
en futuros accesos.

Espero que mis explicaciones y scripts resulten de utilidad para los


desarrolladores en CodeIgniter y que no resulte difcil de implementar este
sistema de login de usuarios. Sobre todo, que las persoans hayan podido
aprender algo con este artculo.

Por supuesto, si han quedado dudas o si se quieren realizar consultas, podis


publicar comentarios y tratar de contestarlos para aclarar lo que fuera
necesario.

Autor
Ing. Diego Angelini
CEO & fundador de Blog de PHP | Responsable de programacin de la pgina
www.solo10.com

Subir

Manual
Manual de CodeIgniter

Funciones comunes en CodeIgniter


Enrutado personalizado de URLs en CodeIgniter

Compartir
2

inCompa rtir

Comentarios
Enviar un comentario al artculo
Javitxu
18/3/2011
Me da este error
A Database Error Occurred
Unable to select the specified database: db_comunio

Filename: C:xampphtdocssystemdatabaseDB_driver.php

Line Number: 140

Que puede ser? he creado la base de datos con el phpmyadmin, llamada db_comunio y
dentro de la carpeta config en el database.php he modificado esta linea:

$db['default']['database'] = 'db_comunio';

Te advierto que soy muy novato y me he podido dejar algo por el camino.
Marcar como spam

Blogdephp

18/3/2011
posibles motivos de no lograr conectar con la base de datos Mysql
Hola Javitsu,

Ten presente que adems de crear la base de datos Mysql, es necesario crear un usuario
Mysql y darle permisos sobre la base de datos.

En mi caso, todas estas tareas puede efectuarlas desde Cpanel (el panel de
administracin que me ofrece mi proveedor de hosting). Luego con phpMyAdmin puede
crear y administrar las tablas de la base de datos.

Una vez que tengas creado el usuario Mysql, con sus permisos respectivos, debes
indicarlo en el archivos database.php de la carpeta "config" (tal como has efectuado con el
nombre de la base de datos).

Por favor, dejame saber si las logrado resolver tu problema de coneccin.

Saludos.-
Marcar como spam

javitxu
30/3/2011
En parte solucionado
Hola,

efectivamente el problema era ese, que no tena creado un usuario, lo he creado y ya no


me da ese error. Ahora me sale lo siguiente:

404 Page Not Found


The page you requested was not found.
Marcar como spam

Javitxu
30/3/2011
Ya me funciona
Puede ser porque en el navegador acceda as:

localhost/index.php/php

en vez de as, que es como me funciona:

localhost/index.php/php/login
Ese era mi fallo?
Marcar como spam

arguitos

05/4/2011
porque harcelo de cero
por que hacerlo de cero con TANK library te ahorras horas de programacion ademas es
completa
Marcar como spam

veronica
18/7/2011
agradecimiento
muy buena leccion. a la espera de mas informacion sobre este framer.
saludos
Marcar como spam

nico
21/7/2011
Password encriptado
Hola. No saben si hay forma de almacenar la contrasea encriptada en la base de datos y
luego compararla con la contrasea enviada en el post (con CI) ?
gracias de antemano
Marcar como spam

nico
24/7/2011
Password encriptado
Hola de nuevo. Ya encontr la forma de hacerlo. Uso la funcin sha1 para encriptar la
contrasea (antes de guardarla en la base de datos y antes de validarla).
Seguro que hay formas mejores de hacerlo pero esta es suficiente para mi.
Saludos
Marcar como spam

vero
01/8/2011
login con codeigniter
A PHP Error was encountered

Severity: Notice

Message: Undefined property: Php::$form_validation

Filename: controllers/php.php

Line Number: 11

Fatal error: Call to a member function set_rules() on a non-object in


C:xampphtdocsCodosapplicationcontrollersphp.php on line 11
Marcar como spam

Anonimo
15/9/2011
Duda xD
Me gusto mucho tu tutorial, solo que tengo una pregunta.

muestro una tabla con los siguiente datos:

#producto|fecha ingreso|proveedor|descripcion

pero me gustaria que el usuario pueda presionar #producto y ordenarlos conforme a este
id. o por fecha de ingreso o por proveedor.

Desearia algo como la funcionalidad que tiene las tablas de mysql que al presionar algun
encabezado las ordena con respecto a el.

Me gustario mucho que me oriente.

muchas gracias
Marcar como spam

sebastian
24/9/2011
encriptar
Hola, muy buen articulo, me gustaria saber como puedo encriptar el password para luego
tomarlo desde la BD. De antemano, muchas gracias.
Marcar como spam

Robinson
08/5/2012
Desarrollo de un Login con codeigniter
Necesito estoy empezando a programar con codeigniter, realice el codigo que ustedes nos
planteraron y me sale un error que hasta ahora no he podido resolver. Al presionar
cualquier cosa, que este o no en la base de datos, al presionar en el boton ingresar me
lleva a otra pagina con el siguiente mensaje, Disallowed Key Characters. Si alguien sabe el
porque de este aviso que por favor me lo haga saber.Gracias!!!
Marcar como spam

vicenrele

04/7/2012
function index() en el controlador
Hola.
No faltara poner en el controlador la function index()? Yo estoy probando y si no lo pongo
no funciona.
Debo decir que estoy probando con CI 2.1

Buen tutorial! Un saludo ;)


Marcar como spam

PhiRequiem

07/8/2012
duda con function login.
Hi.
Excelente tutorial, gracias a ti me estoy familiarizando con CodeIgniter.
una duda por que la funcin "function login" no es public?
Marcar como spam

Alejandro Cascante
25/8/2012
Error de pgina no encontrada
Hola amigo, al enviar el formulario me carga esta pgina

index.php/php/login.php

y me muestra error de pgina no encontrada. qu puede estar fallando?

Gracias por la ayuda.


Marcar como spam

Enviar un comentario al artculo

Usuarios: Login | Registro

S-ar putea să vă placă și