Login simple con php

El titulo lo dice todo, iniciar sesión con php. Con el header WWW-Authenticate, que hará que salga una ventanita en nuestro navegador pidiendo un usuario y contraseña.
Muy útil para proyectos web que necesiten de un sistema básico de autentificación para acceder a áreas privadas, como un panel de control, etc ...
El ejemplo muestra como se hace para autentificar un único usuario, pero podría hacerse para todos los que se quiera, eso si, yo usaría una base de datos para almacenar los nombres de usuario y contraseñas.

<?php
function showLogin() {
 header('WWW-Authenticate: Basic realm="Company name"');
 header('HTTP/1.0 401 Unauthorized');
 echo('Lá página está protegida, usted necesita permisos.<br />');
 echo('Este texto se muestra si el usuario pulsa el boton "cancelar".');
 exit;
}

$user = (isset($_SERVER['PHP_AUTH_USER'])?$_SERVER['PHP_AUTH_USER']:"");
$pass = (isset($_SERVER['PHP_AUTH_PW'])?$_SERVER['PHP_AUTH_PW']:"");

if ($user == "admin" && $pass == "pass") {
 echo('Hola '.$user.'!');
 //header("Location: http://pagina.privada/");
} else {
 showLogin();
}

?>


Mas ejemplos e informacion: http://www.php.net/manual/es/features.http-auth.php

Comentarios