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 14/02/2006, 12h24   #1
Membre habitué
 
Avatar de sami_c
 
Inscription : mai 2002
Messages : 632
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 632
Points : 147
Points : 147
Par défaut Déconnexion et bouton Précédent

Bjr,
Dans mon appli php, l'accès se fait par logn/mdp, ensuite toute les pages font des controle sur une var de session. Le click sur un lien DECONNEXION lance une page logout.php dont le code est le suivant :
Code :
1
2
3
4
 
session_start();
session_destroy();
header("Location: index.php");
le pb c'est qu'avec certains navigateur (exp : OPERA), on peut utiliser le bouton PRECEDENT et visualiser toutes les pages ouvertes ! Comment faire pour interdire ceci ?
__________________
'...parfois l'informatique peut vous rendre fou...'
sami_c est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2006, 12h30   #2
Membre Expert
 
Avatar de Bidouille
 
Inscription : mars 2003
Messages : 1 158
Détails du profil
Informations forums :
Inscription : mars 2003
Messages : 1 158
Points : 1 054
Points : 1 054
Faire un "or die" sur la présence d'une variable de session
__________________
Rédacteur PHP / Delphi ADO / Novell / OpenOffice.org

Inutile de m'envoyer vos questions par MP, je ne réponds que par le forum.
Bidouille est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2006, 12h31   #3
Membre du Club
 
Inscription : février 2005
Messages : 93
Détails du profil
Informations personnelles :
Âge : 29
Localisation : Suisse

Informations forums :
Inscription : février 2005
Messages : 93
Points : 67
Points : 67
Envoyer un message via MSN à -DeN-
et si tu rajoutes

dans ton logout.php?
-DeN- est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2006, 12h54   #4
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
Merci -DeN- au fait, j'ai finalement compris le mystère des sessions grâce à toi ^^
session_start() + session_unset() + session_destroy()
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2006, 13h26   #5
Membre émérite
 
Inscription : juillet 2005
Messages : 775
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : juillet 2005
Messages : 775
Points : 858
Points : 858
Envoyer un message via AIM à ouatmad Envoyer un message via MSN à ouatmad Envoyer un message via Yahoo à ouatmad
@-DeN-
Citation:
Merci -DeN- au fait, j'ai finalement compris le mystère des sessions grâce à toi ^^
session_start() + session_unset() + session_destroy()
au fait je crois que en ce moment ya une repetition inutile que tu fais . je pense q session_unset() suffit largement
__________________
Les hommes naissent et demeurent libres et egaux en dignité et en droit. Les distinctions sociales ne peuvent etre fondées que sur l'utilité commune. Article 1 droits et de l'homme et du citoyen. 1789
ouatmad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2006, 14h23   #6
Membre du Club
 
Inscription : février 2005
Messages : 93
Détails du profil
Informations personnelles :
Âge : 29
Localisation : Suisse

Informations forums :
Inscription : février 2005
Messages : 93
Points : 67
Points : 67
Envoyer un message via MSN à -DeN-
Citation:
Envoyé par Kirkis
Merci -DeN- au fait, j'ai finalement compris le mystère des sessions grâce à toi ^^
session_start() + session_unset() + session_destroy()
Content de t'avoir aidé. Pour ce qui est de la répétition, je n'en suis pas si sûr. Mieux vaut avoir un logout.php "standardisé" avec:
Code :
1
2
session_unset();
session_destroy();
et on est trankil
-DeN- est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2006, 14h35   #7
Membre confirmé
 
Avatar de Wormus
 
Inscription : septembre 2005
Messages : 259
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 259
Points : 207
Points : 207
moi ce que je fais pour le problème du bouton précédent c'est de mettre une condition au début de mes pages (qui sont protéger par login+pwd)

Code :
if(isset($_SESSION["user"])) {
que je termine à la fin de ma page par :

Code :
1
2
3
4
} else {
	print "vous n'étes pas connecté !!<br/>";
	print "<a href='index.php'>retour</a>";
}
si l'utilisateur ne c pas déconnecter il reviendra en arrière en problème, si il s'est déconnecter il le bouton précédent ne présentera pas vraiment la même page
__________________
Bankaï !!
Wormus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2006, 14h36   #8
Membre du Club
 
Inscription : février 2005
Messages : 93
Détails du profil
Informations personnelles :
Âge : 29
Localisation : Suisse

Informations forums :
Inscription : février 2005
Messages : 93
Points : 67
Points : 67
Envoyer un message via MSN à -DeN-
juste, je fais la même chose
-DeN- est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2006, 16h20   #9
Membre habitué
 
Avatar de sami_c
 
Inscription : mai 2002
Messages : 632
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 632
Points : 147
Points : 147
ne fais bien un controle dans chaque page, en fait j'ai un fichier nommé access.inc.php dont le code est le suivant :
Code :
1
2
3
4
 
session_start();
if ( !isset($_SESSION['sess_user']) )
   header("Location: erreur.php");
ensuite je fais un include à chaque début d'une page protégée.
Mais voilà, avec certain navigateurs le bouton PRECEDENT ouvre la page precedente SANS exécuter son code !! que ce soit en PHP ou JS, le code n'est jamais executé de nouveau, tantqu'on n'a pas cliqué sur un lien ou actualisé la page, car dans ces cas on est directement renvoyé à la page erreur.php
J'ai essayé de faire un JS qui actualise la page mais ça ne se lance pas quand on arrive à ladite page par le bouton précédent
Je pense que le pb vient du fait que certains navigateurs stoquent les pages dans le cache, et que le bouton PRECEDENT ne font qu'ouvire ces pages à partir du cache ! mais si c'est vraiement ça le pb alos c'est vraiement un gros pb !!!
__________________
'...parfois l'informatique peut vous rendre fou...'
sami_c est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2006, 16h30   #10
Membre du Club
 
Inscription : février 2005
Messages : 93
Détails du profil
Informations personnelles :
Âge : 29
Localisation : Suisse

Informations forums :
Inscription : février 2005
Messages : 93
Points : 67
Points : 67
Envoyer un message via MSN à -DeN-
je crois me souvenir qu'il y a moyen de désactiver le cache grâce aux headers. à voir.
-DeN- est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/02/2006, 16h40   #11
Membre habitué
 
Avatar de sami_c
 
Inscription : mai 2002
Messages : 632
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 632
Points : 147
Points : 147
en effet, il y a aussi des meta tags pour celà, mais ça ne fonctionne pas avec certains navigateurs qui n'en font qu'à leur tete !! Exp : OPERA
__________________
'...parfois l'informatique peut vous rendre fou...'
sami_c est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h19.


 
 
 
 
Partenaires

Hébergement Web