Ver Mensaje Individual
  #3 (permalink)  
Antiguo 29/05/2009, 12:13
Avatar de jaao_death
jaao_death
 
Fecha de Ingreso: abril-2009
Ubicación: Murcia/españa
Mensajes: 229
Antigüedad: 15 años
Puntos: 6
Respuesta: Login simple pero seguro

Cita:
Iniciado por Kenichi Ver Mensaje
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'] == 01$_SESSION['count']+1;
 echo 
"El nombre de usuario o la contrasena ingresada son incorrectos.";
 }
}
?>