Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/01/2011, 19h40   #1
Invité régulier
 
Inscription : juin 2008
Messages : 137
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 137
Points : 6
Points : 6
Par défaut L'utilisateur repasse toujours par le formulaire

Bonjour à tous,


J'ai un site en back-office qui permet à un utilisateur d'accèder à des pages Z à l'aide d'un formulaire qui lui demande son login et son mot de pass.

Mon problème est le suivant :
Lorsque cet utilisateur se connecte pour accèder à ces fameuses pages, qu'il retourne ensuite sur la page principale du site et qu'il souhaite retourner sur ses pages Z que lui seul doit voir, il repasse à chaque fois par le formulaire. Comment puis-je faire pour que cela ne soit pas le cas ?

Merci d'avance et bon fin de week end .


Guns Of The Patriots
Guns Of The Patriots est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/01/2011, 20h12   #2
Expert Confirmé
 
Avatar de RunCodePhp
 
Inscription : janvier 2010
Messages : 2 706
Détails du profil
Informations personnelles :
Localisation : Réunion

Informations forums :
Inscription : janvier 2010
Messages : 2 706
Points : 3 274
Points : 3 274
Salut

Pas sûr d'avoir bien compris, mais si tu as déjà un système d'identification, peut être est-ce basé sur les sessions.
Si tel est le cas, alors pourquoi ne pas rajouter une info dans la session qui dirait que pour telle ou telle personne elle sera autorisée à demandée telle ou telle page sans devoir "passer" sans cesse par le formulaire en question.

Le simple fait de passer 1 fois peu entre autre être un moyen (ou le moment) de mémoriser ça.

Ou alors, (toujours basé sur la session), on peu envisager quelque chose plus évolué, comme créer des groupes d'utilisateurs.
Tel groupe aura la permission de demander telle ou telle page.
D'autres utilisateurs pas les pages ci-dessus mais seulement d'autres, ou quelques unes pas toutes.
... etc ...

Tout dépend ce qui est recherché.



Ceci dit, tout ça n'a peut être rien avoir, peut être est ce réellement un problème de session ?
Quand tu dis qu'il retourne sur le site principale, est ce toujours le backoffice ou le backend ?
En somme, il y a t-il un problème ou recherche tu rajouter une fonctionnalité ?
Un peu plus d'infos serait mieux à mon sens.
__________________
Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]
RunCodePhp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/01/2011, 20h32   #3
Invité régulier
 
Inscription : juin 2008
Messages : 137
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 137
Points : 6
Points : 6
Citation:
Envoyé par RunCodePhp Voir le message
Salut

Pas sûr d'avoir bien compris, mais si tu as déjà un système d'identification, peut être est-ce basé sur les sessions.
Si tel est le cas, alors pourquoi ne pas rajouter une info dans la session qui dirait que pour telle ou telle personne elle sera autorisée à demandée telle ou telle page sans devoir "passer" sans cesse par le formulaire en question.

Le simple fait de passer 1 fois peu entre autre être un moyen (ou le moment) de mémoriser ça.

Ou alors, (toujours basé sur la session), on peu envisager quelque chose plus évolué, comme créer des groupes d'utilisateurs.
Tel groupe aura la permission de demander telle ou telle page.
D'autres utilisateurs pas les pages ci-dessus mais seulement d'autres, ou quelques unes pas toutes.
... etc ...

Tout dépend ce qui est recherché.



Ceci dit, tout ça n'a peut être rien avoir, peut être est ce réellement un problème de session ?
Quand tu dis qu'il retourne sur le site principale, est ce toujours le backoffice ou le backend ?
En somme, il y a t-il un problème ou recherche tu rajouter une fonctionnalité ?
Un peu plus d'infos serait mieux à mon sens.


Merci pour ta réponse RunCodePhp. Et merci de prendre le temps de m'aider

J'utilise en effet le systême de Session.

En faite mon identification permet d'accèder à une page A et une page B. La page A pour l'utilisateur X et l'autre page par l'utilisateur Z. Lorsque, par exemple, l'utilisateur X est connecté et qu'il navigue sur le site et qu'il retourne sur la page A, il repasse par le formulaire. Si j'utilise ce système de session, l'utilisateur une fois connecté ne devrait pas se re-loguer... Me suis-je mieux exprimer cette fois-ci ?

Pour se loguer, il y a derrière une base de donnée avec une table login + mot de passe. Et j'utilise la variable suivante pour la session : $_SESSION['login'].
Guns Of The Patriots est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/01/2011, 20h54   #4
Expert Confirmé
 
Avatar de RunCodePhp
 
Inscription : janvier 2010
Messages : 2 706
Détails du profil
Informations personnelles :
Localisation : Réunion

Informations forums :
Inscription : janvier 2010
Messages : 2 706
Points : 3 274
Points : 3 274
Citation:
Me suis-je mieux exprimer cette fois-ci ?
Oui, mais tu ne répond pas à toutes les questions.

Tu évoquais un backoffice et un retour vers la page principale.
Mais si cette page principale est par exemple le frontend (le site grand publique), ça peu vraiment être un problème et provoquer ce phénomène.
Ca vaut la peine d'y répondre, on élimine ou pas une possibilité, vois tu ?
En somme, qu'a telle de particulier cette page A ?


Sinon, regarde du coté du navigateur, des cookies, et observe si tu ne verrais pas un problème, un truc douteux en faisant des essais.
Il faut au moins que le nom, son Id, le domaine, le path (chemin) soient toujours le même et les bons paramètres.
Vu qu'il y a un problème, il devrait avoir quelque chose qui change, de pas très zen.

Essai aussi de débugger un peu avec Php, la fonction session_get_cookie_params().

Post les infos si nécessaire.
__________________
Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]
RunCodePhp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2011, 08h05   #5
Invité régulier
 
Inscription : juin 2008
Messages : 137
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 137
Points : 6
Points : 6
Citation:
Envoyé par RunCodePhp Voir le message
Oui, mais tu ne répond pas à toutes les questions.
Je vais répondre désolé !

Citation:
Envoyé par RunCodePhp Voir le message
Ceci dit, tout ça n'a peut être rien avoir, peut être est ce réellement un problème de session ?
Quand tu dis qu'il retourne sur le site principale, est ce toujours le backoffice ou le backend ?
En somme, il y a t-il un problème ou recherche tu rajouter une fonctionnalité ?
Un peu plus d'infos serait mieux à mon sens.
Je ne sais pas si c'est vraiment un problème de session justement. Dans mon formulaire, en faisant des tests. J'ai rajouté un "echo" avec écrit Bonjour + son nom, et lorsque je me connecte avec ses identifiants et que j'accède à ses pages et que je revenais, le formulaire affichait bien "Bonjour" + nom mais demande de se reconnecter. Le problème étant qu'il ne devrait pas repasser par le formulaire puisqu'il est connecté !!!
Lorsque je parle du site principale, ce sont la partie avec les informations que les visiteurs voient, le frontend comme tu dis.


Citation:
Envoyé par RunCodePhp Voir le message
Tu évoquais un backoffice et un retour vers la page principale.
Mais si cette page principale est par exemple le frontend (le site grand publique), ça peu vraiment être un problème et provoquer ce phénomène.
Ca vaut la peine d'y répondre, on élimine ou pas une possibilité, vois tu ?
En somme, qu'a telle de particulier cette page A ?
Sur cette page A, c'est une interface où l'utilisateur peut mettre à jour certaines parties du site. C'est une contrainte que je dois respecter pour mon site.


Citation:
Envoyé par RunCodePhp Voir le message
Sinon, regarde du coté du navigateur, des cookies, et observe si tu ne verrais pas un problème, un truc douteux en faisant des essais.
Il faut au moins que le nom, son Id, le domaine, le path (chemin) soient toujours le même et les bons paramètres.
Vu qu'il y a un problème, il devrait avoir quelque chose qui change, de pas très zen.

Essai aussi de débugger un peu avec Php, la fonction session_get_cookie_params().

Post les infos si nécessaire.
Elle permet quoi cette fonction ? Je la met dans mon code ?
Guns Of The Patriots est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2011, 12h10   #6
Expert Confirmé
 
Avatar de RunCodePhp
 
Inscription : janvier 2010
Messages : 2 706
Détails du profil
Informations personnelles :
Localisation : Réunion

Informations forums :
Inscription : janvier 2010
Messages : 2 706
Points : 3 274
Points : 3 274
Citation:
Elle permet quoi cette fonction ? Je la met dans mon code ?
Son nom est explicite normalement : ça renvoie les informations concernant le cookie de session (un tableau).
N'oublie pas qu'il y a une doc en ligne.
Pour cette fonction : http://fr2.php.net/session_get_cookie_params

Aussi, as tu jeter un oeil sur le cookie ?

Je sais que c'est pas simple, mais ton problème est technique, c'est du code, alors il faut du code, ou au moins certaine informations concernant certains code (variables, tableau, session, etc ...).
Si tu ne donne pas ce genre d'infos, on ne pourra pas t'aider malheureusement.

Si ce site c'est toi qu'il l'a codé, normalement tu dois pouvoir donner ces informations, faire un minimum de débuggage en somme.


Citation:
Sur cette page A, c'est une interface où l'utilisateur peut mettre à jour certaines parties du site. C'est une contrainte que je dois respecter pour mon site.
Tu ne répond toujours pas à la question, on s'en fiche un peu que ce soit une contrainte, c'est pas une info utile, vois tu.
L'info que je cherche à savoir en te posant cette question (un gros sous-entendu) : Est ce que les 2 parties (frontend/backend) ont une gestion de session ?
Est ce qu'il ne serait pas possible que les 2 entrent en conflits ?
Ca peu être le cas, et d'ailleurs il est pas rare de voir que les 2 parties ont leur propre session (au minimum un nom différent).


Citation:
J'ai rajouté un "echo" avec écrit Bonjour + son nom
Mais comment as tu obtenu le nom ? Avec la session ?
Mais c'est pas vraiment comme ça qu'il faut débugger, il vaut mieux exploiter ceci :
Code :
1
2
3
4
print_r($_SESSION);
print_r(session_get_cookie_params);
echo 'session_id : '.session_id().'<br />';
echo 'session_name : '.session_name().'<br />';
C'est bien plus pertinent comme info, car le fait d'avoir tout ce qui concerne la session, on peu soit constater que tout est conforme, soit l'inverse détecter une incohérence.
Voir le faire juste après identification, puis sur cette fameuse page A, et comparer, voir comment ça évolue, et poster sur le forum au besoin.


Citation:
mais demande de se reconnecter
Peut être est-ce une condition qui ne serait pas tout as fait correcte, j'en sais rien.
Donc regarde quelle est la condition (le code) qui fait que la personne est considérée comme identifiée ou pas ?
Post cette partie de code si nécessaire.


A mon sens, il te faut plonger dans le code, car tout repose sur du code.
__________________
Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]
RunCodePhp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/01/2011, 19h14   #7
Invité régulier
 
Inscription : juin 2008
Messages : 137
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 137
Points : 6
Points : 6
Désolé de répondre si tard... Merci pour ses précisions RunCodePhp !
J'ai pris note. D'ailleurs mon problème est résolu. J'avais fait une erreure dans mon code php qui n'était pas logique. Merci encore !
Guns Of The Patriots est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h57.


 
 
 
 
Partenaires

Hébergement Web