cs_Caryl
Messages postés12Date d'inscriptionsamedi 14 février 2004StatutMembreDernière intervention13 septembre 2005
-
14 juil. 2005 à 18:32
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 2007
-
14 juil. 2005 à 19:18
Après le login de l'utilisateur, mon script va chercher dans la base de
données l'ancien numéro de session afin de la détruire. Après cela je
lance l'instruction session_start() afin d'obtenir un nouvelle session.
Au passage avec la page suivante le script essaye de se connecter à
l'ancienne session, bien entendu détruite. Je fais passer le numéro
session par l'url mais je pense que le php utilise de préférence les
cookies.
Ce qui est le plus désagréable, c'est que la page a marché pendant deux semaines comme ça et d'un coup j'ai ce problème.
Si vous connaisez la réponse à mon problème merci, sinon comment fait
on pour empêcher php de passer par les cookies, sachant que les pages
sont sur un serveur dont je ne controle pas le php.ini.
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 14 juil. 2005 à 19:03
Salut,
si tu nous détaillais ton problème peut-être plus précisément on
pourrait t'aider je pense. Ton problème exact c'est quoi ? si tu
détruis une session comment PHP peut "tenter d'accéder à l'ancienne
session" ? pour toucher aux sessions faut du code PHP, PHP ne le fait
pas tout seul...
Bref me concernant je n'ai pas compris ton problème.
cs_Caryl
Messages postés12Date d'inscriptionsamedi 14 février 2004StatutMembreDernière intervention13 septembre 2005 14 juil. 2005 à 19:08
En fait la base de données conserve les anciens numéros de session.
Lorsque je loggue, le script va chercher l'ancien numéro de session,
s'y connecte et la détruit afin de décharger le serveur. Ensuite je
demande l'attribution d'un numéro de session que je passe par l'url
vers la page suivante. Le problème est que la page suivante n'utilise
pas le numéro de session que je viens de demander mais celui qui a été
destroy.
Le problème est très désagréable et je suis à la recherche d'une méthode différente afin de me débarasser des sessions.
superbaloo78
Messages postés87Date d'inscriptionvendredi 29 août 2003StatutMembreDernière intervention19 mai 2006 14 juil. 2005 à 19:15
Euh le but des sessions c'est de demarrer lorsque tu passe
session_start(); et le grand interet des sessions c'est que lorsque
l'utilisateur se deconnecte, la session est detruite. Les sessions
c'est un fichier creer par php (dans le repertoire sessions pour free
par exemple sinon dans /var/www/ en general) qui va se detruire tout
seul (enfin par ton serveur apache) lorsque l'utilisateur va se
deconnecter donc .... pas besoin de supprimer la variable session,
c'est fait automatiquement lorsque tu quitte ton explorateur internet.
L'interet de detruire une variable session (par session_destroy(); )
c'est de pouvoir se deloguer manuellement d'un site sans avoir a
relancer son explorateur internet (par exemple pour pouvoir utiliser un
autre compte utilisateur). Donc ici, aucun besoin de sauvegarder les
numeros de sessions dans une base de donnees pour pouvoir la detruire
ensuite :)
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 14 juil. 2005 à 19:18
Lorsque l'utilisateur ferme son navigateur le fichier texte contenant
la session n'est pas supprimé par le serveur immédiatement, mais au
bout d'un temps session.lifetime défini dans le php.ini, par défaut 24
minutes.