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
// El nombre del host, usualmente localhost
$host       = "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 🙂