Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Quelles sont toutes les causes possibles d'une perte de session ?

3 réponses
Avatar
pub
Bonjour,

Je débute en PHP4, et j'ai un problème de session :

Login.php :
-----------
<?php
//Imports
// Ex : $root = $_SERVER['DOCUMENT_ROOT'];
// require_once($root."/common/BD.class.php");
session_start();

if(!session_is_regitered('LoggedIn')){
//Recherche user
//Si erreur affichePageHTMLLogin.php (qui finit par exit()) ->
fonction
//Sinon $LoggedIn = TRUE; session.register('LoggedIn');
}
?>

Autres infos :
--------------
- J'inclus ceci à chaque page qui doit être vérifiée. Ex :
require_once('../Login.php') au début de chaque page
- La page de Login fait appel à un template Smarty
- à la fin de ce template je vois bien le session_id();
- J'arrive à le faire marcher


MON PROBLEME :
--------------
Chaque fois que je navigue entre les pages qui font appel à ce script,
session_start() redémarre une nouvelle session (je vois les cookies se
rajouter) et je retourne sur la page de Login car 'LoggedIn' n'existe
plus (normal, je n'ai plus ma session).


MA QUESTION :
-------------
Quelles sont toutes les causes possibles d'une perte de session ?
- Les imports ? (embrouille avec les chemins)
- les templates (j'y crois pas trop...) ?
- J'ai entendu parler de problèmes de headers ?
- Le passage par des fonctions ou des classes ?

Merci,
Karel

3 réponses

Avatar
Savut
Il faut continuer a utiliser session_start() dans tout les autres pages que
le visiteur visite afin de garder la session en vie. Si une page ne l'a pas,
la session est perdu. Par exemple, tu met session_start() dans la page
index.php et dans help.php. Le visiteur commence par index.php, la session
est cree, ensuite il va help.php, la session marche tjr. Si il va a
contact.php, la session est perdu, lorsqu'il revient a index.php ou
help.php, la session est deja perdu, une nouvelle est donc cree. Pour
remedier ca, sois tu met session_start() dans tout les pages php, sois tu
configure apache ou dans un fichier .htaccess

php_value session.autostart 1

ce qui fera que session est automatiquement demarre et vivant dans tout les
pages sous ce repertoire. (session_start() dans chaque page n'est donc plus
necessaire).


Savut

"karelnet" wrote in message
news:
Bonjour,

Je débute en PHP4, et j'ai un problème de session :

Login.php :
-----------
<?php
//Imports
// Ex : $root = $_SERVER['DOCUMENT_ROOT'];
// require_once($root."/common/BD.class.php");
session_start();

if(!session_is_regitered('LoggedIn')){
//Recherche user
//Si erreur affichePageHTMLLogin.php (qui finit par exit()) ->
fonction
//Sinon $LoggedIn = TRUE; session.register('LoggedIn');
}
?>

Autres infos :
--------------
- J'inclus ceci à chaque page qui doit être vérifiée. Ex :
require_once('../Login.php') au début de chaque page
- La page de Login fait appel à un template Smarty
- à la fin de ce template je vois bien le session_id();
- J'arrive à le faire marcher


MON PROBLEME :
--------------
Chaque fois que je navigue entre les pages qui font appel à ce script,
session_start() redémarre une nouvelle session (je vois les cookies se
rajouter) et je retourne sur la page de Login car 'LoggedIn' n'existe
plus (normal, je n'ai plus ma session).


MA QUESTION :
-------------
Quelles sont toutes les causes possibles d'une perte de session ?
- Les imports ? (embrouille avec les chemins)
- les templates (j'y crois pas trop...) ?
- J'ai entendu parler de problèmes de headers ?
- Le passage par des fonctions ou des classes ?

Merci,
Karel


Avatar
BloodRath
karelnet wrote:

MA QUESTION :
-------------
Quelles sont toutes les causes possibles d'une perte de session ?
- Les imports ? (embrouille avec les chemins)
- les templates (j'y crois pas trop...) ?
- J'ai entendu parler de problèmes de headers ?
- Le passage par des fonctions ou des classes ?

Merci,
Karel


Heu question bête t'as pense a vérifier que l'id de session etait bien
propagée au différentes pages ?

Avatar
BloodRath
karelnet wrote:

MA QUESTION :
-------------
Quelles sont toutes les causes possibles d'une perte de session ?
- Les imports ? (embrouille avec les chemins)
- les templates (j'y crois pas trop...) ?
- J'ai entendu parler de problèmes de headers ?
- Le passage par des fonctions ou des classes ?

Merci,
Karel


bonjour,

je commencerais tres betement par : la perte de l'id de session lors de
la lecture des parametres de celle ci par le code.
pas de session.use_trans_sid activé ni de passage de l'id de session par
cookie ou par url par exemple.