// fixer les valeurs du login et mot de passe ayant droit d'accès
$table_acces array ("login"> "motdepasse");
$valide_users = array_keys($table_acces);
// récupération du login et mot de passe saisis par l'utilisateur
$user = $_SERVER['PHP_AUTH_USER'];
$pass = $_SERVER['PHP_AUTH_PW'];
//comparaison du login et mot de passe saisis par l'utilisateur et ceux du tableau en haut !
$validated (in_array($user, $valide_users)) && ($pass $table_acces[$user]);
if (!$validated) {
// si les informations sont invalides
header('WWW-Authenticate: Basic realm="My Realm"');
header('HTTP/1.0 401 Unauthorized');
die ("vous nêtes pas autoriser à accéder à cette espace !");
}
// sinon l'utilisateur a saisis le bon login et mot de passe
//renvoi vers une autre page web sécurisée.
echo "Bienvenue $user.
";
echo "vous avez le bon login et mot de passe et donc vous avez pu accéser !!!!.
";
ceci marche nickel !!!
Mon problème est que je veux accéder à cette page web sécurisée sans que l'utilisateur ne tape le login et le mot de passe, càd que je passe de cette page d'accueil vers l'autre sans que l'utilisateur n'ai la fenêtre d'autentification HTTP sachant que le login et mot de passe sont fixés auparavant !
neigedhiver
Messages postés2480Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention14 janvier 201119 30 juil. 2008 à 13:50
Salut,
C'est pas vraiment possible sans tricher, parce que l'authentification HTTP est gérée par le navigateur. Elle se fait sans cookies, ou paramètre dans l'URL : elle fait partie intégrante du protocole HTTP. Donc : il faut obligatoirement que le navigateur envoie à un moment ou un autre un identifiant et un mot de passe pour le "realm" concerné, qu'il conservera pour utilisation ultérieure.
Une manière de tricher est d'ouvrir la page avec fopen et une url de ce genre :
login:password@www.host.tld/page/securisee.php
Mais à ce moment là, l'authentification HTTP ne sert plus à rien, puisque c'est le script qui fait l'identification... Autant utiliser les sessions PHP.
<hr size="2" width="100%" />Neige
N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...