effacer tous les session sauf une?

Eléphant du PHP | 216 Messages

03 juil. 2006, 13:28

Bonjour,

voilà j'ai une application web qui créé pas mal de sessions en fonction de ce que fait l'utilisateur.

J'aimerais que lorsque l'utilisateur accède à une certaine page du site que toutes les sessions soit supprimées sauf une, celle de son logon :
$_SESSION["pseudo"]

est-ce possible?

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

03 juil. 2006, 13:50

Petite remarque, tu n'as qu'une seule "session", dans laquelle tu places plusieurs valeurs :)

Pour les enlever, il tu peux utiliser la commande unset() et les supprimer une par une. S'il y en a vraiment beaucoup (demande toi déjà si c'est nécessaire d'en avoir autant ;)) il est peut être plus simple de récupérer le pseudo, vider entierement le tableau $_SESSION et y remettre le pseudo ensuite :)

Mammouth du PHP | 19672 Messages

03 juil. 2006, 13:52

j'essayerais dans une boucle foreach:
foreach($_SESSION as $index => $valeur)
{
    if($index != "pseudo")
    {
        unset($_SESSION[$index]);
    }
}
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 197 Messages

03 juil. 2006, 20:23

oui cette solution me semble bonne...

Eléphant du PHP | 216 Messages

04 juil. 2006, 09:18

Non au fait je n'ai pas qu'une seule session, j'en 'ai plusieurs :

$_session['panier']
$_session['code_retour']
$_session['conection']

etc...

voilà.

Est-ce que ta méthode Cyrano fonctionne même si j'ai plusieurs session?

ViPHP
ViPHP | 1961 Messages

20 oct. 2006, 04:14

Bonsoir,

En adaptant la méthode de Cyrano tu peux faire QQ chose du style

Code : Tout sélectionner

foreach($_SESSION as $index => $valeur) { switch($index) { case 'panier' : case 'code_retour' : case 'conection' : unset($_SESSION[$index]); break; default : break; } }
Deux choses sont infinies, l'Univers et la sottise humaine!!
Mais je ne suis pas sur de ce que j'affirme au sujet de l'Univers.

A. Einstein

ViPHP
ViPHP | 2144 Messages

20 oct. 2006, 11:21

Non au fait je n'ai pas qu'une seule session, j'en 'ai plusieurs :

$_session['panier']
$_session['code_retour']
$_session['conection']

etc...

voilà.

Est-ce que ta méthode Cyrano fonctionne même si j'ai plusieurs session?
non, tu as une seule session pour un visiteur, mais tu as plusieurs variables de sessions, dans la session.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

20 oct. 2006, 14:27

ça vous arrive de regarder la date du dernier message :mrgreen:

Le sujet à été remonté par un spam... le posteur d'origine à certainement résolu son problème depuis :langue:

Bon mais au moins une solution a été proposée :)

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

ViPHP
ViPHP | 2144 Messages

20 oct. 2006, 14:36

En effet :oops: :oops:

Le bot : :tir2:

ViPHP
ViPHP | 1961 Messages

20 oct. 2006, 14:43

Bonjour,

Désolé, je n'avait pas remarqué le piège. :oops:
Deux choses sont infinies, l'Univers et la sottise humaine!!
Mais je ne suis pas sur de ce que j'affirme au sujet de l'Univers.

A. Einstein

Eléphant du PHP | 193 Messages

20 oct. 2006, 14:43

Faut pas trop nous en demander non plus aussi :oops:

Mammouth du PHP | 19672 Messages

20 oct. 2006, 16:22

Voilà, le spam est parti à la poubelle ;)
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

zebu
Invité n'ayant pas de compte PHPfrance

01 déc. 2007, 15:21

:twisted: :?: J'ai six sessions et je veut en effacer quatre comment je fai :?: [/u][/i][/b]

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

01 déc. 2007, 15:34

En ouvrant ton propre sujet (avec un lien vers celui-ci si tu en as envie), en détaillant un peu plus et éventuellement un peu de code. :-k

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute