[PHP] Besoin d'aide pour un systeme de login avec des sessions

Besoin d'aide pour un systeme de login avec des sessions [PHP] - PHP - Programmation

Marsh Posté le 09-11-2005 à 19:55:35    

Bonjour,  
 
Dans le cadre d'un projet php pour la fac, je dois créer un site de commerce electronique en relation avec des bases de données, des expressions réguliers et tout le bazar. Bon pour le moment je m'en sors plutot bien, mais je bloque sur un truc: La gestion du login d'un utilisateur. Plutot que 1000 mot, un lien pour vous montrer:
 
http://isfates.no-ip.org/newsite/ (updaté ^^)
 
Bien, pour le moment le login marche comme je le veux (message d'erreur affiché si ce n'est pas le bon login/mdp, ou login inconnu), et un "Identification correcte, vous êtes désormais connecté" quand c'est bon (zavez qu'a tester :o)
 
Maintenant, j'aimerais quand quand le login est sucessful, la partie de droite où il ya les champs Login, pass et "se souvenir de moi" disparaissent et laissent place à un bouton (Deconnexion, "login" ), et qu'une foit authentifié, le user le soit sur tout le site. (oublions le "se se souvenir de moi" qui n'est pas encore implanté pour le moment, j'imagine qu'il me faudra placer un cookie)
 
Je ne vois pas trop comment procéder, vu qu'il faut alors tester si oui ou non un user est loggué. Je pensais à une fonction "est_loggué", mais elle devra placer une (super) variable accessible partout pour dire si qqun est loggué. Ca serait plus simple avec une session, j'imagine. Quelqu'un peut m'aider ?
 
(et pas de commentaires sur le site, on a tous été débutants un jour :o)
 
 :hello:


Message édité par ParadoX le 13-12-2005 à 22:45:45

---------------
Pier noir la mèr - La chanson par HFR Band - Topic TrueCrypt
Reply

Marsh Posté le 09-11-2005 à 19:55:35   

Reply

Marsh Posté le 09-11-2005 à 20:26:02    

arf, quand tu arrives sur "connexion réussie", c'est que tu as filé le bon login/mdp à la page php/login.php
si tu te ballade sur le site et qu'à partir d'une autre adresse tu tapes tonsite/php/login.php, il y a une erreur d'id avec erreur de code php en plus
 
pour afficher déconnexion et pour garder l'authentification sur "mon panier" par exemple, il faut que tu gères le login comme vaiable de session ou alors une autre forme un peu plus sécurisée mais la question est la même


---------------
The Rom's, à votre service
Reply

Marsh Posté le 09-11-2005 à 20:40:10    

Je n'ai pas très bien saisi ce que tu veux dire :sweat:


---------------
Pier noir la mèr - La chanson par HFR Band - Topic TrueCrypt
Reply

Marsh Posté le 09-11-2005 à 21:24:28    

Effectivement, gere le avec une variable de session.
Quand ton login est succesfull, tu créer une variable de session qui sera dispo sur toute la session. (ex : $_SESSION["login"]="Toto" )
 
Simplement, si ton user est connecté, la variable existe (test avec isset($_SESSION["login"])), et si il l'est pas, la variable existe pas (pas oublier de killer et dé-réferencer tt les var de sessions qd tu ferme la session).
 
En gros, si la variable existe pas, tu affiche les champs de saisie login, et si elle existe, tu affiche le bouton deco.
Right ?  :hello:  :)
 
PS : Sur "Mon compte", il demande toujour de s'identifier, mais pas acces aux data pour le moment.....  ;)

Message cité 1 fois
Message édité par djfx le 09-11-2005 à 21:28:40

---------------
Pas oublier les glacons pour l'apero !!
Reply

Marsh Posté le 09-11-2005 à 21:37:48    

djfx a écrit :

Effectivement, gere le avec une variable de session.
Quand ton login est succesfull, tu créer une variable de session qui sera dispo sur toute la session. (ex : $_SESSION["login"]="Toto" )
 
Simplement, si ton user est connecté, la variable existe (test avec isset($_SESSION["login"])), et si il l'est pas, la variable existe pas (pas oublier de killer et dé-réferencer tt les var de sessions qd tu ferme la session).
 
En gros, si la variable existe pas, tu affiche les champs de saisie login, et si elle existe, tu affiche le bouton deco.
Right ?  :hello:  :)
 
PS : Sur "Mon compte", il demande toujour de s'identifier, mais pas acces aux data pour le moment.....  ;)


 
Ah ouiii bien vu  :jap:  
Le contenu de ma variable ne joue aucun rôle, non ? 'fin jpeux laisser "toto", on teste juste son existance non ?  
Comment je déréférence une variable de session ? Que se passe-t-il si l'utilisateur ferme le browser sans de déconnecter ?


---------------
Pier noir la mèr - La chanson par HFR Band - Topic TrueCrypt
Reply

Marsh Posté le 09-11-2005 à 21:48:18    

Bahh la variable nan, a part tester !  
Mais ca peut etre bien de la garder. Moi quand mes user sont connectés, je reccupere leur infos dans la  BDD, et je marque en haut : Bonjour Toto .X
Ca fait jolie !  :)  lol
 
Pour killer les var, unset($variable), et session_unset() pour fermer session.
Si ton user ferme la fenetre .. heuuuuuuu JOKER ! Je sai plus si toute les variables degage ou pas. Mais il me semble que oui...... donc il devra se reconnecter. Au pire le serveur detruit après 1 timeout ......
 
PS : Toute les fonctions et infos sur www.php.net  :hello:


Message édité par djfx le 09-11-2005 à 21:50:57

---------------
Pas oublier les glacons pour l'apero !!
Reply

Marsh Posté le 09-11-2005 à 21:51:04    

Merci pour tout. Je teste tout ça, faites pas attention aux parse error qui arrivent quand j'update :D


---------------
Pier noir la mèr - La chanson par HFR Band - Topic TrueCrypt
Reply

Marsh Posté le 09-11-2005 à 22:56:31    

:lol: Bien joué Smarties !! je voi que ca marche !  :hello:


Message édité par djfx le 09-11-2005 à 22:56:45

---------------
Pas oublier les glacons pour l'apero !!
Reply

Marsh Posté le 09-11-2005 à 23:24:42    

Je continue, je continue ... mais c'est pas fini, Mission Impossible #2: Faire marcher le "se souvenir de moi" :D
 
Mais je veux y arriver tout seul, zallez pas tout me faire :o Je reviendrai si jamais je bloque :)


---------------
Pier noir la mèr - La chanson par HFR Band - Topic TrueCrypt
Reply

Marsh Posté le 10-11-2005 à 00:06:31    

Hmpf, un pote m'a fait remarquer qu'en 1024, c'est assez moche, et puis les messages d'erreur de remplissage du formulaire s'affichent après le footer :/
Jsuis en 1280 * 1024, hmpf. Ya une solution pas trop chiante ? :/


---------------
Pier noir la mèr - La chanson par HFR Band - Topic TrueCrypt
Reply

Marsh Posté le 10-11-2005 à 00:06:31   

Reply

Marsh Posté le 10-11-2005 à 00:14:17    

heu, une fois identifié, si tu cliques sur accueil, il te repropose de t'identifier au lieu de se déconnecter
ça veut dire qu'il t'as déconecté ou que c'est juste une ptite erreur ?


---------------
The Rom's, à votre service
Reply

Marsh Posté le 10-11-2005 à 00:35:41    

c'est une erreur, enfin ce n'est pas encore fait. La raison de l'erreur, c'est que sur l'accueil, je n'ai pas d'include des parties de droite et de gauche, mais c'est tout écrit en "dur". Tout cela parce que le index.php est un répertoire au dessus des autres qui sont tous ds /php et les chemins ne sont pas encore modifiés


Message édité par ParadoX le 10-11-2005 à 00:37:33

---------------
Pier noir la mèr - La chanson par HFR Band - Topic TrueCrypt
Reply

Marsh Posté le 13-12-2005 à 22:46:35    

Up, pour ceux que ça intéresse :D
 
http://isfates.no-ip.org/newsite
 
On a bientot fini, on doit rendre dans 2 jours ... des critiques ? :D Merci à tous ceux qui ont aidé :jap:


---------------
Pier noir la mèr - La chanson par HFR Band - Topic TrueCrypt
Reply

Sujets relatifs:

Leave a Replay

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