Podría ser:
Código PHP:
<?php
if (!isset($_SERVER['PHP_AUTH_USER'])) {
header('WWW-Authenticate: Basic realm="Acceso restringido"');
header('HTTP/1.0 401 Unauthorized');
echo 'Authorization Required.';
exit;
}
$fich = file("passwords.txt");
$i=0; $validado=false;
while ($fich[$i] && !$validado) {
$campo = explode("|",$fich[$i]);
if (($_SERVER['PHP_AUTH_USER']==$campo[0]) && ($_SERVER['PHP_AUTH_PW']==chop($campo[1]))) $validado=true;
$i++;
}
if (!$validado) {
header('WWW-Authenticate: Basic realm="Acceso restringido"');
header('HTTP/1.0 401 Unauthorized');
echo 'Authorization Required.';
exit;
}
// Ejemplo: Se asume que tu usuario página será: nombre_usuario.php ..
header ("Location: ".$_SERVER['PHP_AUTH_USER'].".php");
?>
No sé como identificas los datos de tu usuario -> página "personal" .. No sé si le das el mismo nombre a una "página?" o a un directorio .. o como .. Tienes que definir y dejar claro ese punto. El ejemplo que expongo asume por ejemplo que creas páginas para su usuarios.
Realmente deberías usar sesiones para tener un mejor control de esas páginas por usuario .. Cuidado que otros usuarios "logeados" vean páginas de otros -usuarios- simplemente marcando el URL directo de las otras páginas. Esto se solventa con sesiones (no con autentificación HTTP).
PD: Ten cuidado . .usa los arrays superglobales: $_SERVER para acceder a tus variables de servidor (como es tu caso) .. por tu seguridad.
Un saludo,