Cookies et php : Le Répertoire Fou

Cookies et php : Le Répertoire Fou - PHP - Programmation

Marsh Posté le 31-07-2002 à 14:07:05    

Hello tout le monde :hello:
 
J'ai déjà posté 2-3 topics pour la refonte d'un site en PHP...
 
Aujourd'hui, le souci est le suivant :
 
Conditions de base

  • une page de connexion (accueilmembre.php)
  • une page d'accueil (membre.php, après connexion) qui permet de créer un cookie contenant les données suivantes : login, password, équipe (c'est un jeu de hockey) et type (joueur ou admin).
  • sur chaque page du site, je vérifie l'existence du cookie avec la page verifcookie.php, dont voici le code :
Code :
  1. <? // Test de présence d'un cookie et vérification du mot de passe associé
  2. // NE FONCTIONNE PAS EN MODE REQUIRE : DONC, RECOPIE SUR CHAQUE PAGE.
  3. if ((!empty($HTTP_COOKIE_VARS["LHO-login"])) && (!empty($HTTP_COOKIE_VARS["LHO-password"])) && (!empty($HTTP_COOKIE_VARS["LHO-equipe"])) && (!empty($HTTP_COOKIE_VARS["LHO-type"]))) {
  4. // Connexion à la base
  5. require "../include/config.php";
  6. require "../include/include.php";
  7. require "../include/messages.php";
  8. // Si le cookie existe, vérification du login/password
  9. $login  = $HTTP_COOKIE_VARS["LHO-login"];
  10. $password = $HTTP_COOKIE_VARS["LHO-password"];
  11. $equipe  = $HTTP_COOKIE_VARS["LHO-equipe"];
  12. $type  = $HTTP_COOKIE_VARS["LHO-type"];
  13. $requete = "select dirg_ch_password from lho_dg where dirgich_login = '$login'";
  14. $reponse = mysql_query($requete) or die("$requete : conservez ce texte et contactez un administrateur svp" );
  15. $row = mysql_fetch_array($reponse);
  16.        
  17.         if (!empty($row["dirg_ch_password"])) {
  18.        
  19.          // Si MDP trouvé, on vérifie
  20.          $password_bdd = $row["dirg_ch_password"];
  21.          if (md5($password_bdd) != $password) { ?>
  22.           <script language="javascript">
  23.            alert("Mot de passe incorrect" );
  24.    document.location.replace("../membre/deco.php" );
  25.   </script>
  26. <?  }
  27. }
  28. }
  29. else { ?>
  30. <script language="javascript">
  31.  alert ("Accès direct à la page interdit sans cookie!" );
  32.  document.location.replace("../membre/deco.php" );
  33. </script>
  34. <? } ?>


 
L'arborescence des répertoires

  • membre : contient les pages de connexion, d'accueil, et les autres fonctions utiles aux joueurs.
  • include : contient verifcookie.php et config.php (ficheir de connexion à la base).
  • admin : contient les fonctions d'admin.


Le souci
Dans la page membre.php, je vérifie le type de l'utilisateur : si c'est un admin, alors je crée un lien vers une page d'administration.

  • Si la page est contenue dans le répertoire admin, alors, quand je veux y aller, il me dit qu'il n'y a pas de cookie présent.
  • Alors que si la page est contenue dans le répertoire membre, tout va bien.


Quelqu'un a une idée du pourquoi du comment? [:xx_xx]
 
C'est pas que ça m'embête, mais j'aimerais bien avoir une vraie séparation fonctionnelle, et pis bon, c'est trop stupide comme truc :D

Reply

Marsh Posté le 31-07-2002 à 14:07:05   

Reply

Marsh Posté le 01-08-2002 à 10:37:44    

[:c3po]

Reply

Marsh Posté le 05-08-2002 à 13:49:36    

[:draculax_tt]

Reply

Marsh Posté le 05-08-2002 à 14:47:51    

côté inclusion tout fct ?
 
sur quel domaine est enregistré ton cookie ?
setcookie("pwd",$pwd,time()+3600,"/domaine" );


---------------
...oups kernel error...
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed