Domingo, Marzo 9th, 2008...15:09

Login de usuarios en php

Saltar a Comentarios

Creamos la tabla usuarios

CREATE TABLE `usuarios` (
`id` int(4) NOT NULL auto_increment,
`username` varchar(60) NOT NULL default '',
`password` varchar(60) NOT NULL default '',
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=2 ;

//insertamos un valor como prueba
INSERT INTO `members` VALUES (1, 'juanra', '123456');

Ahora el fichero de checklogin

<?php
$host="localhost"; // El nombre del host, usualmente localhost
$username=""; // Nombre de usuario mysql
$password=""; // contraseña mysql
$db_name="test"; // base de datos que usaremso
$tbl_name="usuarios"; // nombre de la tabla


//Conectamos con el servidor y seleccionamos la base de datos
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");

//Cogemos los datos que nos llegan desde el formulario ( lo tendremos que crear)
$minombre=$_POST['minombre'];
$contraseña=$_POST['contraseña'];

// Unas pequeñas medidas de seguridad para proteger las bases de datos de posibles inyecciones
$minombre = stripslashes($minombre);
$contraseña = stripslashes($contraseña);
$minombre = mysql_real_escape_string($minombre);
$contraseña = mysql_real_escape_string($contraseña);


$sql="SELECT * FROM $tbl_name WHERE username='$minombre' and password='$contraseña'";
$result=mysql_query($sql);

// Contamos el numero de filas
$count=mysql_num_rows($result);
//Si el resultado marcado es $minombre y $contraseña,debería haber solo una fila
if($count==1){

//Registramos usuario y redireccionamos a exito.php
session_register("minombre");
session_register("contraseña");
header("location:exito.php");
}
else {
echo "Nombre de usuario equivocado o contraseña";
}
?>

El exito.php…

<?//si llegamos aquí, todo fue bien
session_start();
if(!session_is_registered(myusername)){
header("location:principal.php");
}
?>

Por último el formulario

//a gusto del consumidor :)


Entradas Relacionadas

Dejar una respuesta

La moderación de comentarios está activada. Su comentario podría tardar cierto tiempo en aparecer.