Yo les recomiendo leer lo que diga PHP.net al respecto:
http://www.php.net/manual/en/features.http-auth.php
Sobre todo para que usen el array superglobal $_SERVER para obtener las variables de servidor 'PHP_AUTH_USER' y afines ...
Una vez autentificado tu usuario en la variable:
$_SERVER['PHP_AUTH_USER'] tienes a tu usuario ...
Un saludo,