//--------------------------------------------------------------Este es el código del index.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Formulario</title>
</head>
<body>
<form action="login.php" method="post">
Username: <input type="text" name="username" /><br />
Password: <input type="password" name="password" /><br />
<input type="submit" value="Log in" />
</form>
</body>
</html>
/*Este es el códgio del primer formulario del que comentaba, cuando el usuario esta registrado, solamente tiene que ingresar su nombre y contraseña, en dado caso que no sea usuario registrado, hay un formulario especial en el cual el puede registrarse y crear su username y password para ingresar a la pagina*/
//--------------------------------------------------------------register.php
<?php
echo "<h1>Registro</h1>";
$submit = $_POST['submit'];
$fullname = strip_tags($_POST['fullname']);
$username = strip_tags($_POST['username']);
$password = strip_tags($_POST['password']);
$repeatpassword = strip_tags($_POST['repeatpassword']);
$date = date("Y-m-d");
if($submit){
if($fullname && $username && $password && $repeatpassword){
if($password == $repeatpassword){
if(strlen($username) > 25 || strlen($fullname) > 25){
echo "¡La longitud de nombre de usuario o nombre completo es demasiado largo!";
}else{
if(strlen($password) > 25 || strlen($password) < 6){
echo "La contraseña debe tener entre 6 y 25 caracteres";
}else{
$password = md5($password);
$repeatpassword = md5($repeatpassword);
$connect = mysql_connect("localhost", "root", "admin");
mysql_select_db("phplogin");
$queryreg = mysql_query("INSERT INTO users VALUES('', '$fullname', '$username', '$password', '$date')");
die("¡Se han registrado!. <a href='index.php'>Volver a la pagina de acceso</a>");
}
}
}
else
echo "¡Las contraseñas no coinciden!";
}
else
echo "¡Por favor, rellene <b>todos</b> los campos!";
}
?>
<html>
<body>
<p>
<form action='register.php' method='post'>
<table>
<tr>
<td>
Su nombre completo
</td>
<td>
<input type="text" name="fullname" value='<?php echo $fullname; ?>'>
</td>
</tr>
<tr>
<td>
Elegir un nombre de usuario
</td>
<td>
<input type="text" name="username" value='<?php echo $username; ?>'>
</td>
</tr>
<tr>
<td>
Elegir una contraseña
</td>
<td>
<input type="password" name="password" value='<?php echo $password; ?>'>
</td>
</tr>
<tr>
<td>
Repite tu contraseña
</td>
<td>
<input type="password" name="repeatpassword" value='<?php echo $repeatpassword; ?>'>
</td>
</tr>
<tr>
<td>
<input type="submit" name="enviar" value="Enviar">
</td>
</tr>
</table>
</form>
</body>
</html>
/*Este es el código del formulario de registro donde el usuario puede ingresar sus datos y crear una cuenta propia para que pueda acceder al resto del contenido de la página, acontinuación muestro los demas archivos que se utilizaron.*/
//--------------------------------------------------------------login.php
<?php
session_start();
$username = $_POST['username'];
$password = $_POST['password'];
if($username && $password){
$connect = mysql_connect("localhost", "root", "admin") or die("¡No se pudo conectar!");
mysql_select_db("phplogin") or die("No se encontro la base de datos");
$query = mysql_query("SELECT * FROM users WHERE username='$username'");
$numrows = mysql_num_rows($query);
if($numrows != 0){
while($row = mysql_fetch_assoc($query)){
$dbusername = $row['username'];
$dbpassword = $row['password'];
}
if($username == $dbusername && $password == $dbpassword){
echo "¡Usted esta en! <a href='member.php'>clic</a> aqui para entrar a la pagina miembro.";
$_SESSION['username'] = $username;
}
else
echo "¡Password incorrecto!";
}
else
die("¡El usuario no existe!");
}
else
die("¡Por favor, introduce nombre de usuario y contraseña!");
?>
//--------------------------------------------------------------member.php
<?php
session_start();
if($_SESSION['username'])
echo "Bienvenido ".$_SESSION['username']."!<br><a href='logout.php'>Logout</a>";
else
die("Tienes que estar registrado");
?>
//--------------------------------------------------------------logout.php
<?php
session_start();
session_destroy();
echo "Usted ha sido desconectado. <a href='index.php'>Clic aqui</a> para volver.";
?>
//--------------------------------------------------------------Tabla users de la base de datos phplogin
CREATE TABLE `users` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`name` VARCHAR( 25 ) NOT NULL ,
`username` VARCHAR( 25 ) NOT NULL ,
`password` VARCHAR( 25 ) NOT NULL ,
`date` DATE NOT NULL
) ENGINE = MYISAM ;
/*He estado buscando documentación de como hacerle para mostrar un menu diferente de la página dependiendo del nombre de usuario y contraseña que se ingresen en el 1er formulario.
Es decir, si el nombre de usuario es alexis y su contraseña 123admin123, que le muestre un menu con siertos links, si su nombre de usuario es jennifer y la contraseña abc, que le muestre otro menu diferente, he leido que lo hacen con un if.
ejemplo.
/ / Si el nombre de usuario o la contraseña no está definida, mostrar la ventana de autenticación
if (! isset($_SERVER['PHP_AUTH_USER']) || ! isset($_SERVER['PHP_AUTH_PW'])) {
header('WWW-Authenticate: Basic Realm="Authentication"');
header("HTTP/1.1 401 Unauthorized");
/ / salida Si el nombre de usuario y la contraseña se establecen
} else {
echo "Your supplied username: ".$_SERVER['PHP_AUTH_USER']."<br />";
echo "Your password: ".$_SERVER['PHP_AUTH_PW']."<br />";
}
Eso es lo que encontre, un ejemplo de como seria, pero no tengo idea en que parte del código que tengo implementarlo, para que al momento que se ingresen los usernames y passwrods muestren menus diferentes.
*/
Espero que me puedan explicar mejor como puedo hacer que este código funcione, de antemano saludos.