Cita:
Iniciado por Kenichi
Podrias usar sesiones, para mi es lo mas seguro que hay, por ejemplo, una cosa asi:
Archivo index.php (o la pagina que quieras proteger):
Código PHP:
<?php
session_start();
if (!isset($_SESSION['es_admin']))
{
include "login.php";
}
else
{
?>
el resto de la pagina va aqui con html
<?php
}
?>
Archivo login.php:
Código PHP:
<?php
if (!isset($_POST['usuario']))
{
?>
<form action="?" method="post">
Usuario: <input type="text" name="usuario" /><br>
Contrasena: <input type="password" name="contrasena" />
<input type="submit" value="Iniciar Sesion" />
</form>
<?php
}
else
{
$usuario = $_POST['usuario'];
$contrasena = $_POST["contrasena"];
$user = ''; // entre las comillas el usuario que quieras para el login
$pass = ''; // lo mismo para la contraseña
if ($usuario == $user && $contrasena == $pass)
{
$_SESSION['es_admin'] = true;
header("Location: ?");
}
else
{
echo "El nombre de usuario o la contrasena ingresada son incorrectos.";
}
}
?>
Este sistema es solo para un usuario, si quieres hacerlo con mas usuarios te recomiendo que uses una base de datos.
Ahora cada vez que cualquier persona que ingrese a la pagina index.php, le pedira nombre de usuario y contraseña y depende de si es correcta o no lo deja pasar. Espero que te sirva, Saludos.
es un poco exagerado pero yo añadiría esto:
Código PHP:
<?php
if (!($_SESSION['count'] < 3)) exit;
if (!isset($_POST['usuario']))
{
?>
<form action="?" method="post">
Usuario: <input type="text" name="usuario" /><br>
Contrasena: <input type="password" name="contrasena" />
<input type="submit" value="Iniciar Sesion" />
</form>
<?php
}
else
{
$usuario = $_POST['usuario'];
$contrasena = md5($_POST["contrasena"]);
$user = ''; // entre las comillas el usuario que quieras para el login
$pass = ''; // lo mismo para la contraseña que ha sido previamente encriptada en md5
if ($usuario == $user && $contrasena == $pass)
{
$_SESSION['es_admin'] = true;
header("Location: ?");
}
else
{
$_SESSION['count'] = ($_SESSION['count'] == 0) 1: $_SESSION['count']+1;
echo "El nombre de usuario o la contrasena ingresada son incorrectos.";
}
}
?>