php et portabilité des variables session

php et portabilité des variables session - PHP - Programmation

Marsh Posté le 16-10-2002 à 10:47:16    

Salut,
 
 J'ai un petit problême. J'appelle une fonction qui me crée une variable session. Puis, je veux y accéder en utilisant d'autre functions, mais rien à faire. Impossible d'y accéder, ni dans la pages qui appelle cette fonction, ni dans les fonctions.
ex :
function init()
{
session_register("test" )
}
function ajout($Valeur)
{
$HTTP_SESSION_VARS["test"]=$Valeur;
}
En fait, il semblerait qu'on ne puisse pas utiliser les sessions de cette façon.
 
Je me trompe ?
Vous avez une solution ?

Reply

Marsh Posté le 16-10-2002 à 10:47:16   

Reply

Marsh Posté le 16-10-2002 à 12:14:18    

vener a écrit a écrit :

Salut,
 
 J'ai un petit problême. J'appelle une fonction qui me crée une variable session. Puis, je veux y accéder en utilisant d'autre functions, mais rien à faire. Impossible d'y accéder, ni dans la pages qui appelle cette fonction, ni dans les fonctions.
ex :
function init()
{
session_register("test" )
}
function ajout($Valeur)
{
$HTTP_SESSION_VARS["test"]=$Valeur;
}
En fait, il semblerait qu'on ne puisse pas utiliser les sessions de cette façon.
 
Je me trompe ?
Vous avez une solution ?



Ben une fois que t'as enregistrer une session, il me semble qu'il faille changer de page internet ou faire un reload au niveau du navigateur pour que $HTTP_SESSION_VARS contienne des données.
Sinon, t'auras rien. Le mieux, c'est d'utilisé un tableau contenant les valeurs de $HTTP_SESSION_VARS au tout début de ton script et de le compléter quand t'initialise une nouvelle session. ;)

Reply

Marsh Posté le 16-10-2002 à 13:44:54    

tu dois la déclarer en global puisque tu es dans ue fonction.
 

Code :
  1. function init()
  2. {
  3. session_register("test" )
  4. }
  5. function ajout($Valeur)
  6. {
  7. global $HTTP_SESSION_VARS;
  8. $HTTP_SESSION_VARS["test"]=$Valeur;
  9. }


---------------
...oups kernel error...
Reply

Marsh Posté le 16-10-2002 à 14:14:31    

Citation :


function ajout($Valeur)  
{  
global $HTTP_SESSION_VARS;
$HTTP_SESSION_VARS["test"]=$Valeur;  
}  

 
 
Excellent c'est ça que je cherchais à faire mais je savais pas comment le faire.
 
Merci à tous les deux.
 :jap:

Reply

Marsh Posté le 22-10-2002 à 09:58:28    

Si tu utilises une version de PHP > 4.0.6,
 
tu peux utiliser le tableaux $_SESSION['test'] qui est GLOBAL et accessible directement dans les fonctions, class etc...
 
@+
FLY LM

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed