Cookies et php : Le Répertoire Fou - PHP - Programmation
MarshPosté le 31-07-2002 à 14:07:05
Hello tout le monde
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 :
<? // Test de présence d'un cookie et vérification du mot de passe associé
// NE FONCTIONNE PAS EN MODE REQUIRE : DONC, RECOPIE SUR CHAQUE PAGE.
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"]))) {
// Connexion à la base
require "../include/config.php";
require "../include/include.php";
require "../include/messages.php";
// Si le cookie existe, vérification du login/password
$login = $HTTP_COOKIE_VARS["LHO-login"];
$password = $HTTP_COOKIE_VARS["LHO-password"];
$equipe = $HTTP_COOKIE_VARS["LHO-equipe"];
$type = $HTTP_COOKIE_VARS["LHO-type"];
$requete = "select dirg_ch_password from lho_dg where dirgich_login = '$login'";
$reponse = mysql_query($requete) or die("$requete : conservez ce texte et contactez un administrateur svp" );
$row = mysql_fetch_array($reponse);
if (!empty($row["dirg_ch_password"])) {
// Si MDP trouvé, on vérifie
$password_bdd = $row["dirg_ch_password"];
if (md5($password_bdd) != $password) { ?>
<script language="javascript">
alert("Mot de passe incorrect" );
document.location.replace("../membre/deco.php" );
</script>
<? }
}
}
else { ?>
<script language="javascript">
alert ("Accès direct à la page interdit sans cookie!" );
document.location.replace("../membre/deco.php" );
</script>
<? } ?>
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?
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
Marsh Posté le 31-07-2002 à 14:07:05
Hello tout le monde
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
L'arborescence des répertoires
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.
Quelqu'un a une idée du pourquoi du comment?
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