Usuarios y contraseñas con PHP y Mysql

Necesito tu ayuda para crear una página con la siguiente característica:
Introducir el usuario y contraseña y vincular a una página personal.
Ejemplo:
Usuario:Oso
Contraseña:12345
Al validar esto que se vincule a su página oso.php
Esto como se realiza para varios usuarios y contraseñas y vinculados para cada uno a su página personal.
1

1 respuesta

Respuesta
1
La idea es muy sencilla. Necesitas una base de datos con una table que sea usuarios por ejemplo. Y como campos debe tener por lo menos 3, uno será el nombre de usuario, otro la contraseña y el último la página personal asociada. Este último campo lo tienes por si en algún momento quieres cambiar esa página o si no quieres que coincida con el nombre del usuario.
Luego tienes que crear la página de entrada que pida el usuario y la contraseña. Lo siguiente es validar esos datos, y si son correctos cargar la página del usuario.
El código es el siguiente:
Página de entrada (login.php):
------------------------------
<html> <head> ... </head>
<body>
<form name='formulario' method='post' action='validar.php'>
Usuario:
<input type='text' name='usuario'>
<br>
Contraseña: <input type='password' name='contrasenia'> <br>
<input type='submit' name='Registrar' value='Registrar'>
</form>
</body> </html>
Página de validación (validar.php):
-----------------------------------
<?php
session_start();
if (!isset( $_POST['usuario'] )) {
header("Location: login.php");
} else {
$id = mysql_connect("localhost", "", "");
mysql_select_db("BaseDatos", $id);
$consulta = "SELECT * FROM Usuarios WHERE usuario = '{$_POST['usuario']}' AND contrasenia = '{$_POST['contrasenia']}'";
$datos = mysql_query($consulta, $id);
$numDatos = @mysql_num_rows($datos);
if ($numDatos <= 0) {
echo "Error: usuario o contraseña incorrectos. O usuario no dado de alta.<br>";
} else {
$_SESSION['User'] = $_POST['usuario'];
header("Location: " . mysql_result($datos, 0, 3); // registro 0, campo 3, que será la página personal del usuario
}
}
?>
Página personal del usuario:
----------------------------
<?php
session_start();
if (!isset($_SESSION['User'])) {
header("Location: login.php");
}
// Mostrar aqui la página personal del usuario
?>
Como ves, se pide el usuario y contraseña, se valida y se crea una sesión. En caso de querer entrar directamente en la página de validación o en la página personal del usuario, al no haber una sesión válida se redirecciona a la página de login. Solo se puede entrar a la página de usuario habiendo pasado primero por la página de login.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas