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 17/07/2008, 23h33   #1
Invité de passage
 
Inscription : août 2006
Messages : 16
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 16
Points : 3
Points : 3
Par défaut Déclaration des variables de sessions

Bonjour,

J'ai realisé une appli en php. Dans le script de mon index je veux declarer une session et initialiser une variable. J'ai donc l'initialisation de cette variable dans une fonction creer_header() appelée dans mon index.php

Lors du retour d'un utilisateur sur cette page lors de sa navigation je ne veux plus initialiser cette variable.

J'ai donc :

if(!$_SESSION['produit']) $_SESSION['produit'] = '0';

Mais lors de la premiere visite d'un utilisateur sur ma page index j'ai toujours le message d'erreur:

Undefined index : produit in...(mon chemin d'acces au fichier contenant la fonction do_header)

Quelqu'un pourrait il m'aider a conprendre comment corriger cette faute ?

Merci beaucoup
vascoII est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2008, 10h11   #2
Membre actif
 
Inscription : mars 2002
Messages : 202
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 202
Points : 151
Points : 151
Salut,
si je comprends bien, ton message d'erreur vient du fait qu'au premier passage, ta variable produit n'existe pas puisque ta fonction creer_header n'a pas été appelée.
Pour corriger le pb, tu peux faire comme ça :
Code :
1
2
 
if(isset($_SESSION['produit'])) $_SESSION['produit'] = '0';
D'ailleurs, si tu ne veux plus initialiser la variable, tu peux la détruire en faisant :
Code :
1
2
 
unset($_SESSION['produit']);
Je sais pas si j'ai bien compris ce que tu voulais.
jibouze est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2008, 16h48   #3
Invité de passage
 
Inscription : août 2006
Messages : 16
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 16
Points : 3
Points : 3
Merci de votre temps et d avoir repondu Jibouze et tMsun j'ai en effet remplacé ! par !isset et je n'ai plus de probleme

Probleme resolu, merci mille fois
vascoII est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2008, 16h51   #4
Nouveau Membre du Club
 
Inscription : juin 2008
Messages : 33
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 33
Points : 28
Points : 28
Si j'ai bien compris c'est lors de la premiere visite, donc ta variable de session produit n'existe pas car elle n'est pas encore initialisée, pour enlever le warning tu peux rajouter un @ il ignorera l'erreur :

Code :
1
2
if(!@$_SESSION['produit']) $_SESSION['produit'] = '0';
Autrement pour ce que disais jibouze je pense que c'était plutot :

Code :
1
2
if(!isset($_SESSION['produit'])) $_SESSION['produit'] = '0';
En espérant que ca pourra t'aider !
tMSun est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h37.


 
 
 
 
Partenaires

Hébergement Web