.. répertoire protégé..

Fermé
malthus - 26 juil. 2003 à 18:02
 malthus - 29 juil. 2003 à 22:45
hello hello..

je me suis renseigné dans les astuces de ccm pour comprendre le fonctionnement de .htaccess et .htpassword.. mais est-ce qu'il serait possible avec ça de faire en sorte que chaque couple identifiant/mot de passe envoie vers une page différente..?

merci d'avance pour votre réponse..

11 réponses

oui une fois la connection etablie rien ne t'empeche dans tes codages d'utiliser des variables d'identitee pour agir en fontcion de l'utilisateur.

mais c'est pas a definir dans les fichiers de securite mais APRES
0
et comment est-ce que je peux récupérer mes variables de la fenêtre système pour les utiliser ensuite dans mon code php..?
0
Jean-François Pillou Messages postés 18301 Date d'inscription lundi 15 février 1999 Statut Webmaster Dernière intervention 16 février 2023 63 274
28 juil. 2003 à 19:47
Les deux variables d'environnement sont :

$HTTP_USER
$HTTP_PASSWORD

Donc il te suffit de faire quelque chose comme ceci :

<?

if ($HTTP_USER == "toto") {}
else if ($HTTP_USER == "grosminet") {}
else {}
?>



0
merci bcp jeff.. tu me sors la tête des bouquins dans lesquels j'allais bientôt me noyer.. ;-)
0
et bien en fait maintenant que j'ai essayé, je n'arrive toujours pas à faire marcher ma redirection..
voilà ce que j'ai comme code :
<?
if ($HTTP_USER == "elaenion")
{header("location: elaenion.html"); }
else if ($HTTP_USER == "mase")
{header("location: mase.html"); }
else
{header("location: php.html"); }
?>

mais il ne semble pas reconnaitre les 2 variables d'environnement puisqu'en essayant :
<?
echo $HTTP_USER;
echo $HTTP_PASSWORD;
?>
rien ne s'affiche à l'écran..

si qqln pouvait m'éclaire un peu..
0
Jean-François Pillou Messages postés 18301 Date d'inscription lundi 15 février 1999 Statut Webmaster Dernière intervention 16 février 2023 63 274
28 juil. 2003 à 22:49
C'est ma faute, il s'agit en fait de $PHP_AUTH_USER et $PHP_AUTH_PW ou plus exactement $_SERVER['PHP_AUTH_USER'] et $_SERVER['PHP_AUTH_PW']

http://www.google.fr/search?hl=fr&ie=UTF-8&oe=UTF-8&q=php+PHP_AUTH_USER+location&btnG=Recherche+Google&meta=cr%3DcountryFR
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
merci pour cette info très utile.. j'ai réussi à m'en sortir avec tout ça.. mais j'ai un soucis au niveau de mon code que voilà :

$requette = mysql_query("Select*From clients_tbl Where user ='$PHP_AUTH_USER' && password='$PHP_AUTH_PW'");
if(mysql_num_rows($requette) != 0)
{
$link = mysql_query("Select redir_page From clients_tbl Where user ='$PHP_AUTH_USER'");
header("location: $link");
}

il ne veut pas envoyer le user sur la bonne page.. d'ailleurs, si je fais echo $link; il me donne qqch comme : Resource id #4..

et là je commence à me casser la tête..
0
Utilisateur anonyme
29 juil. 2003 à 21:29
Salut,
Normal... Ca marche pas tout a fait comme ca...
Je te corrige ca en t'expliquant.


Kalamit,
o(^_^)o
0
Utilisateur anonyme
29 juil. 2003 à 21:38
OK.
Bon, ca, ca devrait fonctionner...

$query = "SELECT * FROM clients_tbl WHERE user ='$PHP_AUTH_USER' AND password='$PHP_AUTH_PW' ";

$result = mysql_query($query);
if(mysql_num_rows($result) != 0)
{
$requete = "SELECT redir_page FROM clients_tbl WHERE user ='$PHP_AUTH_USER' ";
$resultat = mysql_query($requete);
$data = mysql_fetch_array($resultat);
header("location: ".$data['redir_page']);
}


En fait, mysql_query, ne fait qu'executer la requete, mais ne te donne pas les résultats. Pour aller chercher les resultats, il te faut une autre fonction. La, on attend qu'une seule ligne. Donc on met le resultat de la requete dans un tableau avec mysql_fetch_array.
Si on attendait plusieurs lignes on aurait mis le resultat dans un tableaux à deux dimensions que l'on affecterait rgace à mysql_fetch_row.

Voili voilou !
Pour plus d'info sur l'execution des requetes: http://www.php.net et le cours de CCM et ceux de http://www.phpfrance.com
Une adresse qui peut aussi t'etre utile: http://www.phpdebutant.org

A+ !

Kalamit,
o(^_^)o
0
très bien.. très très bien.. je te remercie.. mais..... c'est toujours pas ça..! un echo $data; me donne Array et donc pas de redirection vers la page de l'user..
0
oups.. en fait c'est une erreur de ma part.. ça rigole c'est parfait.. merci encore mille fois..
0
Utilisateur anonyme
29 juil. 2003 à 22:36
Bah oui, c'est merveilleux ce langage, $data est effectivement un tableau. Donc qd tu fais un echo de $data, il te dit que c'est un tableau (array).

Kalamit,
o(^_^)o
0
honnêtement je viens de m'y mettre et je suis déjà conquis.. rien qu'en farfouillant sur divers site je me suis rendu compte qu'on pouvait tout faire..! alors si en plus il y a des gens incroyables comme toi sur les forums pour aider, que demander de plus..?!!
merci encore grand chef..
0