Session

Signaler
Messages postés
7
Date d'inscription
mercredi 16 juin 2004
Statut
Membre
Dernière intervention
7 juin 2005
-
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
-
Voilà j'ai un p'tit problème... j'aimerais vérifier si une session est déjà startée, pour ne pas la starter 2 fois:

dans l'genre:

<?php

session_start();

if (il y a déjà eu un session_start() )
{

echo("Session allready start");

}else{

echo("Session not start");

session_start();

}

?>

3 réponses

Messages postés
249
Date d'inscription
mardi 24 octobre 2000
Statut
Membre
Dernière intervention
28 août 2009

C'est inutile, la fonction le prend en charge... explication

La fonction session_start(); veut juste dire que dans cette page on utilise les sessions, on est OBLIGÉ de l'utiliser au DEBUT de la page avant tout code pour que les sessions fonctionnent

Voila comment travaille la fonction :

1-On appelle session_start();

Si une session n'existe pas : La fonction crée la session, lui donne un ID et éventuellement y stocke les valeurs que l'on veut stocker

Si une session existe déja : On récupère les anciennes infos si elle n'ont pas expirées. donc on ne recrée pas une nouvelle session mais bien on récupere celle d'avant

De plus, pour vérifier qu'une session existe, le code est le suivant

session_start();
if(!isset($_SESSION['mavariable']){

} else {

}

Dans tous les cas, pour utiliser les sessions ou les vérifier, il FAUT le session_start() sinon ca donnera Undefined Variable comme erreur.

Bonne prog ;-)

*************
On a parfois de la chance dans son malheur, moi par exemple, je me suis blessé avec une boite de sparadraps (P.Geluck)

Si vous désirez vous ajouter dans mes contacts MSN, veuillez m'envoyer un message via ce site.
Messages postés
7
Date d'inscription
mercredi 16 juin 2004
Statut
Membre
Dernière intervention
7 juin 2005

Ca je sais.... et de toute façon ça marche même si je fais 2 session_start() à la suite mais ça m'affiche ce message:
Notice: A session had already been started - ignoring session_start() ...

J'pense que c'est une option à modifier dans php.ini mais je n'sais pas laquelle... et j'aimerais quand même éviter de la faire 2 fois pour rien, juste pour le style du code...

Merci pour votre aide...
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
Salut ;-)

Il faut modifier le error_reporting en mettant E_ALL ~ E_NOTICE

a ++

http://www.vulgarisation-informatique.com : entraide, dépannage et vulgarisation informatique