Identification + php + HEADER
psaikopat
Messages postés
339
Statut
Membre
-
TLa Messages postés 57 Statut Membre -
TLa Messages postés 57 Statut Membre -
Salut tout le monde, voila j'ai récup ce script :
Qui permet donc de s'identifier de façon assez simple! Lorsque j'éxécute ça, il me demande de taper 3 fois mon login et mot de passe!
J'aimerais savoir pourquoi ?
<?php
header("WWW-Authenticate: Basic realm='private'");
if (($PHP_AUTH_USER=="*********") && ($PHP_AUTH_PW=="****")) {
echo "<HTML><BODY>";
echo "Vous etes maintenant identifié.\n";
echo "</BODY></HTML>";
} else {
header("WWW-Authenticate: Basic realm='private'");
}
?>
Qui permet donc de s'identifier de façon assez simple! Lorsque j'éxécute ça, il me demande de taper 3 fois mon login et mot de passe!
J'aimerais savoir pourquoi ?
A voir également:
- Identification + php + HEADER
- Entrer les informations d'identification reseau - Guide
- Easy php - Télécharger - Divers Web & Internet
- Identification instagram - Guide
- Supprimer identification instagram - Guide
- Expert php pinterest - Télécharger - Langages
12 réponses
t'as deja essayer d'afficher la valeur de $PHP_AUTH_USER et $PHP_AUTH_PW pour voir s'ils sont bien enregistrés...?
<?php
if (!isset($PHP_AUTH_USER) || !isset($PHP_AUTH_PW)) {
header("WWW-Authenticate: Basic realm='private'");
echo $PHP_AUTH_USER;
echo $PHP_AUTH_PW;}
?>
voila j'ai tester ça, tu es d'accord que mon code est correct?
voila ce ke ça me retourne :
Notice: Undefined variable: PHP_AUTH_USER on line 4 Notice: Undefined variable: PHP_AUTH_PW on line 5
Je te donne le lien du site ou j'ai trouvé ça en pensant que tu pourra trouver mon erreur.
http://www.grappa.univ-lille3.fr/polys/reseaux-DG/reseaux020.html#toc84
Merci d'avance...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Pour taper ton login et mot de passe, tu dois avoir un formulaire je suppose?
Ce formulaire renvoit des données vers ta page où tu testes PHP_AUTH_USER et PHP_AUTH_PW.Mais pour utiliser les données dans cette page il faut dire à PHP comment les récupérer parmis les données envoyées par ton formulaire.
En général on utilise si tu as mis la méthode POST dans la définition de ton formulaire $_POST["variablelogin"] et $_POST["variablepassword"]
exemple:
pagedeconnexion.php
pageauthentification.php
Ce formulaire renvoit des données vers ta page où tu testes PHP_AUTH_USER et PHP_AUTH_PW.Mais pour utiliser les données dans cette page il faut dire à PHP comment les récupérer parmis les données envoyées par ton formulaire.
En général on utilise si tu as mis la méthode POST dans la définition de ton formulaire $_POST["variablelogin"] et $_POST["variablepassword"]
exemple:
pagedeconnexion.php
<form method="post" action="pageauthentification.php"> Votre login:<input type="text" id="USER"/> Votre mot de passe:<input type="password" id="PW"/> </form>
pageauthentification.php
<?php
header("WWW-Authenticate: Basic realm='private'");
/*on récupère les données ddu formulaire et on les stcoke dans les variables PHP_AUTH_USER et PHP_AUTH_PW*/
$PHP_AUTH_USER= $_POST["USER"];
$PHP_AUTH_PW= $_POST["PW"];
/*Là c'est ton code qui teste la valeur des variables auquel je n'ai pas touché*/
if (($PHP_AUTH_USER=="*********") && ($PHP_AUTH_PW=="****")) {
echo "<HTML><BODY>";
echo "Vous etes maintenant identifié.\n";
echo "</BODY></HTML>";
} else {
header("WWW-Authenticate: Basic realm='private'");
}
?>
Pfffff ça me prend la tete j'y arrive pas !! J'ai fait tout ce ke tu ma dis mais ça ne fonctionne pas...
Je veu juste faire un script tout simple pour une identification toute conne mais j'y arrive pas!
QQn pourrait-il m'aidé s'il vous plait!! Je vous en supplie!!
Je veu juste faire un script tout simple pour une identification toute conne mais j'y arrive pas!
QQn pourrait-il m'aidé s'il vous plait!! Je vous en supplie!!
oui bon ben ça va , hein??? ct juste pour savoir...
nan mais l'autre quoi !!! comment qu'y m'côse !!
nan mais l'autre quoi !!! comment qu'y m'côse !!
sur free ils disent de faire comme ca :
voir : http://faq.free.fr/?q=1055
if ( !isset($_SERVER['PHP_AUTH_USER'])
|| !isset($_SERVER['PHP_AUTH_PW'])
|| ($_SERVER['PHP_AUTH_USER'] !== "nom_d_utilisateur" )
|| ($_SERVER['PHP_AUTH_PW'] !== "mot_de_passe") )
{
header('WWW-Authenticate: Basic realm="Authentifiez vous"');
header('HTTP/1.0 401 Unauthorized');
echo 'Acces non autorisé';
exit;
}
echo 'Utilisateur authentifié';
voir : http://faq.free.fr/?q=1055
YESSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
MERCI BCP !!!!!
Tu es d'ou? Que je vienne te félicité!!!! Franchement MERCI ENORMEMENT !!!!
Comment pourrai-je te remercier??
MERCI BCP !!!!!
Tu es d'ou? Que je vienne te félicité!!!! Franchement MERCI ENORMEMENT !!!!
Comment pourrai-je te remercier??
comme ça manque d'explication, j'en ai mis ici :
http://thierry.larmoire.free.fr/dev/test/pwd.html
l'exemple, avec comme login user:password, est là :
http://thierry.larmoire.free.fr/dev/test/pwd.php
sinon
- je suis du 91
- j'ai 29 ans
- je suis ingé en info. indus.
http://thierry.larmoire.free.fr/dev/test/pwd.html
l'exemple, avec comme login user:password, est là :
http://thierry.larmoire.free.fr/dev/test/pwd.php
sinon
- je suis du 91
- j'ai 29 ans
- je suis ingé en info. indus.
Concernant mon message j'ai oublié quelques détails. Dans le code du formulaire jJ'avais mis id="USER et id="PW"" alors que poru que ça passe, il faut mettre name="USER" et name="PW", et il faut mettre un bouton pour envoyer le script:
pagedeconnexion.php:
Dans la page d'authentification, j'ai enlevé les :"header("WWW-Authenticate: Basic realm='private'"); " car la méthode d'authentification que j'utilise fonctionne avec un formulaire directement sur la page html et non pas une nouvelle fenêtre qui s'ouvre par dessus:
pageauthentification.php:
C'est une méthode différente mais ça marche avec le code que je t'ai mis.Il faut bien mettre les 2 codes dans deux fichiers séparés et le code PHP doit bien avoir le même nom que celui qui est marqué dans le paramètre "action=" du formulaire.
Cette méthode d'authentification est celle utilisé sur la plupart des sites mais la méthode que tu as utilisé fonctionne donc c bien aussi, c'est juste la façon d'afficher qui diffère.
pagedeconnexion.php:
<html> <head> <title>Ma page de connexion</title> </head> <body> <form method="post" action="pageauthentification.php"> Votre login:<input type="text" name="USER"/> <br>Votre mot de passe:<input type="password" name="PW"/> <br><input type="submit" Value="Se connecter"> </body> </form> </html>
Dans la page d'authentification, j'ai enlevé les :"header("WWW-Authenticate: Basic realm='private'"); " car la méthode d'authentification que j'utilise fonctionne avec un formulaire directement sur la page html et non pas une nouvelle fenêtre qui s'ouvre par dessus:
pageauthentification.php:
<?php
/*on récupère les données ddu formulaire et on les stcoke dans les variables PHP_AUTH_USER et PHP_AUTH_PW*/
$PHP_AUTH_USER= $_POST["USER"];
$PHP_AUTH_PW= $_POST["PW"];
/*Là c'est ton code qui teste la valeur des variables auquel je n'ai pas touché*/
if (($PHP_AUTH_USER=="abcde") && ($PHP_AUTH_PW=="abc")) {
echo "<HTML><BODY>";
echo "Vous etes maintenant identifié.\n";
echo "</BODY></HTML>";
} else {
echo "Login et/ou mot de passe inconnu.";
}
?>
C'est une méthode différente mais ça marche avec le code que je t'ai mis.Il faut bien mettre les 2 codes dans deux fichiers séparés et le code PHP doit bien avoir le même nom que celui qui est marqué dans le paramètre "action=" du formulaire.
Cette méthode d'authentification est celle utilisé sur la plupart des sites mais la méthode que tu as utilisé fonctionne donc c bien aussi, c'est juste la façon d'afficher qui diffère.