Necesitaba la ayuda de alguien para poder hacer esto:
Lo que quiero hacer, es que al acceder a esta dirección(ejemplo):
example.com/admin/ me ponga un formulario con:
USUARIO y
CONTRASEÑA, ambos datos que fuesen una variable en un archivo php y al coincidir dejase entrar, no se si me explico bien, espero que me ayuden gracias
He encontrado por la web este código que me parece interesante y que es lo que busco, pero no se hacerlo funcionar... El código es este:
Cita: Lo puedes hacer así:
<?php
session_start();
if ($_POST['user']) {
if ($_POST['user'] == "usuario" && $_POST['`pass'] == "contraseña") {
$_SESSION['autorizado'] = TRUE;
header ("Location: protegida.php");
} else {
$mensaje = "Nombre de usuario o contraseña incorrectos";
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Login</title>
</head>
<body>
<p>Introduce tu nombre de usuario y contraseña</p>
<p><?php echo $mensaje; $mensaje = ""; ?></p>
<form action="#" method="post">
<fieldset>
<label>Usuario: <input name="user" /></label>
<label>Contraseña: <input name="pass" type="password" /></label>
<input type="submit" value="Entrar" />
</fieldset>
</form>
</body>
</html>
Y lo más importante es tener esto al inicio de cada una de tus páginas protegidas para que nadie las pueda ver sin estar autorizado:
<?php
session_start();
if ($_SESSION['autorizado'] != TRUE) header("Location: login.php");
?>
(Bueno, es un mensaje de un usuario en yahoo respuestas).
y yo hago esto:
En mi protect.php tengo esto:
Cita: <?php
session_start();
if ($_POST['user']) {
if ($_POST['user'] == "usuario" && $_POST['`pass'] == "contraseña") {
$_SESSION['autorizado'] = TRUE;
header ("Location: protegida.php");
} else {
$mensaje = "Nombre de usuario o contraseña incorrectos";
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Login</title>
</head>
<body>
<p>Introduce tu nombre de usuario y contraseña</p>
<p><?php echo $mensaje; $mensaje = ""; ?></p>
<form action="#" method="post">
<fieldset>
<label>Usuario: <input name="user" /></label>
<label>Contraseña: <input name="pass" type="password" /></label>
<input type="submit" value="Entrar" />
</fieldset>
</form>
</body>
</html>
y en las páginas que quiero que vea si el logueo fue exitoso (ejemplo: index.php, mensaje.php, ect) tengo esto escrito al principio del archivo:
Cita: <?php
session_start();
if ($_SESSION['autorizado'] != TRUE) header("Location: login.php");
?>
Pero no funciona, no se por que, si alguien pudiese repararlo :S