Foros del Web » Programando para Internet » PHP »

Autentificancion HTTP con PHP

Estas en el tema de Autentificancion HTTP con PHP en el foro de PHP en Foros del Web. Hola quiero crear una pagina protegida y me dieron el siguiente codigo que devo poner el comienso e la pagina; Código PHP: <?PHP  if(!isset( $PHP_AUTH_USER ...
  #1 (permalink)  
Antiguo 22/10/2007, 11:55
Avatar de manumaf  
Fecha de Ingreso: mayo-2007
Ubicación: Argentina
Mensajes: 854
Antigüedad: 16 años, 11 meses
Puntos: 6
Autentificancion HTTP con PHP

Hola quiero crear una pagina protegida y me dieron el siguiente codigo que devo poner el comienso e la pagina;

Código PHP:
<?PHP 
if(!isset($PHP_AUTH_USER)) {
  
Header("WWW-Authenticate: Basic realm=\"Zona protegida\"");
  
Header("HTTP/1.0 401 Unauthorized");
  echo 
"Texto que se envía si el usuarios pulsa en botón Cancel\n";
  exit;
} else {
  echo 
"Hola $PHP_AUTH_USER.
"
;
  echo 
"Has introducido $PHP_AUTH_PW como tu clave.
"
;
}
?>
Mi pregunta es como hago para crear los usuarios que puedan entrar?
  #2 (permalink)  
Antiguo 22/10/2007, 14:47
 
Fecha de Ingreso: agosto-2005
Ubicación: Argentina, Capital Federal
Mensajes: 435
Antigüedad: 18 años, 8 meses
Puntos: 2
Re: Autentificancion HTTP con PHP

En lugar de utilizar $PHP_AUTH_USER es muy recomendable utilizar $_SERVER['PHP_AUTH_USER'] si tu versión de PHP es mayor a 4.2 (seguramente lo sea).

Con respecto a los usuarios autorizados, como dice en la documentación de php.net, la variable $_SERVER['PHP_AUTH_USER'] te retornará el nombre de usuario que se ha colocado en la ventanita del navegador mientras que $_SERVER['PHP_AUTH_PW'] retornará el password. Lo único que tienes que hacer es verificar estos datos con tu base de datos:

Código PHP:
<?php
$usuario
='pepe';
$password='1234';

if(!isset(
$_SERVER['PHP_AUTH_USER']))
{
    
header('WWW-Authenticate: Basic realm="..."');
    
header('HTTP/1.0 401 Unauthorized');
    exit;
}
else
{
    if(
$_SERVER['PHP_AUTH_USER']==$usuario && $_SERVER['PHP_AUTH_PW']==$password)
    {
        echo 
'Usuario autenticado';
        
// Incluyes la página que deseas mostrar
    
}
    else
    {
        echo 
'Usuario o contraseña incorrectos';
        exit;
    }
}
?>
Con la diferencia que tu debes buscar la existencia del usuario ingresado en la tabla de usuarios de tu base de datos y verificar que la contraseña ingresada se corresponda con la almacenada.

Saludos.
__________________
R4DS en español | R4DS en inglés
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:57.