variables de session

variables de session - PHP - Programmation

Marsh Posté le 18-05-2005 à 15:45:35    

bonjour,
 
J'ai une erreur bizarre:
voici la partie du code qui me donne plein d'interrogations....

Citation :

echo"$_SESSION[nom] $_SESSION[prenom]<p>";
$nom=substr($nom_fichier,11);            //sert à récupérer juste une partie du nom de fichier
echo"$_SESSION[nom] $_SESSION[prenom]<p>";


 
 
Cela m'affiche:

Citation :

test test      //ce sont des noms et prenoms juste pour tester
janvier.doc test


 
J'en déduis que la seule commande qui a changé la variable de session $_SESSION[nom] est celle de la 2e ligne. La fonction substr me retourne janvier.doc
J'en déduis donc que l'affectation de la variable $nom a affecté aussi $_SESSION[nom]
 
 
Mais pourquoi??????????????? :pfff:


---------------
OST Anime
Reply

Marsh Posté le 18-05-2005 à 15:45:35   

Reply

Marsh Posté le 18-05-2005 à 15:54:18    

$_SESSION['nom']--> Avec des quotes non?.

Reply

Marsh Posté le 18-05-2005 à 15:55:09    

Citation :

Si register_globals  est activé, alors toutes les variables globales peuvent être enregistrées comme variables de session, et toutes les variables de sessions seront reconstituées comme variables globales. Comme PHP doit savoir quels variables globales sont enregistrées comme variables de sessions, l'utilisateur doit enregistrer les variables avec session_register() tandis que $HTTP_SESSION_VARS et $_SESSION  ne nécessitent pas session_register().


http://fr.php.net/session

Reply

Marsh Posté le 18-05-2005 à 15:57:27    

avec des quotes c'est en dehors des quillemets non?
--> echo $_SESSIO['nom'];
 
mais avec des guillemets ca marche
--> echo"$_SESSION[nom]";
 
Je pense que pas que l'erreur vienne de la, enfin je pense.  
J'ai toujours fait comme ça ca n'a jms posé de pb.  
Enfin, dis moi si j'me gourre complètement....  
 
alors je cherche toujours.....


---------------
OST Anime
Reply

Marsh Posté le 18-05-2005 à 15:59:16    

kensei a écrit :

alors je cherche toujours.....

ne cherche plus et lis mon post précédent  ;)  

Reply

Marsh Posté le 18-05-2005 à 16:01:38    

oué c'est ce que je fais mais c'est un peu dur a comprendre, ou bien moi qui ne suis pas tres fort


---------------
OST Anime
Reply

Marsh Posté le 18-05-2005 à 16:08:58    

desactive register_globals et essaye ton script, tu comprendras

Reply

Marsh Posté le 18-05-2005 à 16:10:27    

justement je n'ai jamais utilisé register_globals,  
je suis en train de lire le site de ton lien pour comprendre comment l'utiliser


---------------
OST Anime
Reply

Marsh Posté le 18-05-2005 à 16:22:35    

c'est chiant la plupart des site disent "lorsque register_globals est activé..." , "lorsqu'il est déactivé...". Mais moi je veux savoir comment on fait pour le faire.  
 
J'ai cru comprendre qu'on fait ini_set("register_globals","OFF" );
 
c'est ca?


---------------
OST Anime
Reply

Marsh Posté le 18-05-2005 à 16:28:40    

Recherche register_global dans les fichiers config de ton serveur php et met-le à OFF

Reply

Marsh Posté le 18-05-2005 à 16:28:40   

Reply

Marsh Posté le 18-05-2005 à 16:46:39    

j'ai trouvé sur easyphp, c'est dans le fichier php.ini si je me trompe pas.  
Mais là sur hosteur.com j'arrive pas à trouver ou ca se trouve, quelqu'un connaitrait cet hébergeur suffisament pour me dire ou trouver ce fichier?
 
désolé d'être aussi exigeant  :D


---------------
OST Anime
Reply

Marsh Posté le 18-05-2005 à 16:51:12    

Il est peu probable que cet hébergeur décide de changer sa politique de configuration de son serveur Php.
Reste peut-être ta fonction ini_set mais je n'en sais rien.
 
Sinon, tu évites tout simplement cette confusion dans ton code.

Reply

Marsh Posté le 18-05-2005 à 16:54:29    

ok merci je pensais que qu'on pouvait modifier soi-même ce fichier. Au moins la, je suis fixé.  
Merci !


---------------
OST Anime
Reply

Marsh Posté le 18-05-2005 à 17:04:00    

kensei a écrit :

avec des quotes c'est en dehors des quillemets non?
--> echo $_SESSIO['nom'];
 
mais avec des guillemets ca marche
--> echo"$_SESSION[nom]";
 
Je pense que pas que l'erreur vienne de la, enfin je pense.  
J'ai toujours fait comme ça ca n'a jms posé de pb.  
Enfin, dis moi si j'me gourre complètement....  
 
alors je cherche toujours.....


 
En dehors d'une string on ecrit

Code :
  1. $_SESSION['nom']


A l'interieur d'une string on ecrit

Code :
  1. "{$_SESSION['nom']}"


La syntaxe

Code :
  1. "$_SESSION[nom]"

fonctionne, mais cette derniere est depreciee.
Plus d'infos dans la doc de php.

Reply

Sujets relatifs:

Leave a Replay

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