Hola amigos.
Se que este es un tema muy tratado y con múltiples formas de hacerlo, sin embargo no logro encontrar la forma de escribir el código para que me funcione.
Encontré este script que me funciona perfectamente ya que no deseo utilizar base de datos y lo tengo en la página donde tengo que restringir el acceso:
Código PHP:
<?
// Autentifacion Multiple/Basica Utilizando $_SERVER['PHP_AUTH_USER'] y $_SERVER['PHP_AUTH_PW']
// By DeeRme
// http://deerme.org
// Listado de Usuarios Permitidos
$lista[0]['user']='usuario';
$lista[0]['pw']='contraseña';
$lista[1]['user']='usuario2';
$lista[1]['pw']='contraseña2';
function autentificar($u,$p)
{
global $lista;
foreach ($lista as $datos)
{
if ( ($datos['user'] == $u) AND ($datos['pw'] == $p) )
{
return TRUE;
}
}
return FALSE;
}
// $PHP_AUTH_USER,$PHP_AUTH_PW
$user = $_SERVER['PHP_AUTH_USER'];
$pass = $_SERVER['PHP_AUTH_PW'];
if ( !autentificar($user,$pass) )
{
header('WWW-Authenticate: Basic realm="Acceso restringido"');
header('HTTP/1.0 401 Unauthorized');
echo 'Autentifacion No Valida';
exit;
}
// Contiuamos la Carga del Sitio
?>
<?php
El caso es que quisiera poner un link para desconectar y he probado con una página desconectar.php en la cual he insertado el código
Código PHP:
<?php
session_destroy();
header("Location: index2.php");
?>
mas otros tantos que he probado y no funciona, también lo he tratado de poner en una funcion desde la misma página y también me da error.
El caso es que no se si este código agrega cookie o sólo trabaja con el valor de la variable global.
También he probado a poner las variables a cero:
Código PHP:
$lista[0]['user']='';
$lista[0]['pw']='';
$lista[1]['user']='';
$lista[1]['pw']='';
y recargar la página pero tampoco funciona.
¿Alguien podría ayudarme a solucionarlo con el procedimiento correcto?
Desde ya muchas gracias.