J'ai eu la surprise de constater que dans certains cas
l'utilisation d'une variable $foo dans un script pouvait écraser une variable $_SESSION['foo'] sans qu'a aucun moment $_SESSION['foo']=$foo;
Quelqu'un a t'il déja vu ça ? s'il y a une explication rationelle, j'aimerais bien la connaître
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Bruno Desthuilliers
kurius wrote:
J'ai eu la surprise de constater que dans certains cas l'utilisation d'une variable $foo dans un script pouvait écraser une variable $_SESSION['foo'] sans qu'a aucun moment $_SESSION['foo']=$foo;
Je n'en n'ai pas trouvé confirmation dans la doc (j'ai peut-être mal cherché...), mais je pense que la réponse est probablement quelque part dans le php.ini, du côté de la directive 'register_global'.
Bruno
kurius wrote:
J'ai eu la surprise de constater que dans certains cas
l'utilisation d'une variable $foo dans un script pouvait
écraser une variable $_SESSION['foo'] sans qu'a aucun moment
$_SESSION['foo']=$foo;
Je n'en n'ai pas trouvé confirmation dans la doc (j'ai peut-être mal
cherché...), mais je pense que la réponse est probablement quelque part
dans le php.ini, du côté de la directive 'register_global'.
J'ai eu la surprise de constater que dans certains cas l'utilisation d'une variable $foo dans un script pouvait écraser une variable $_SESSION['foo'] sans qu'a aucun moment $_SESSION['foo']=$foo;
Je n'en n'ai pas trouvé confirmation dans la doc (j'ai peut-être mal cherché...), mais je pense que la réponse est probablement quelque part dans le php.ini, du côté de la directive 'register_global'.
Bruno
HeReTiC
De ce que je comprend de ces cas, c'est normal. J'utilise toujours la fonction session_register("foo") pour conserver la syntaxe $foo pour accéder à la variable, c'est à dire éviter d'avoir à toujours écrire $_SESSION['foo']. Dans mes scripts, je commence la session et c'est évident qu'écrire $foo revient à écrire $_SESSION['foo'].
En fin de compte, oui j'ai déjà vu ça et je crois que c'est normal.
kurius wrote:
Bonjour
J'ai eu la surprise de constater que dans certains cas l'utilisation d'une variable $foo dans un script pouvait écraser une variable $_SESSION['foo'] sans qu'a aucun moment $_SESSION['foo']=$foo;
Quelqu'un a t'il déja vu ça ? s'il y a une explication rationelle, j'aimerais bien la connaître
-- Merci de votre temps,
*Vincent Fouquereau* Webmaster - The Crash Site *http://www.TheCrashSite.com*
De ce que je comprend de ces cas, c'est normal. J'utilise toujours la
fonction session_register("foo") pour conserver la syntaxe $foo pour
accéder à la variable, c'est à dire éviter d'avoir à toujours écrire
$_SESSION['foo']. Dans mes scripts, je commence la session et c'est
évident qu'écrire $foo revient à écrire $_SESSION['foo'].
En fin de compte, oui j'ai déjà vu ça et je crois que c'est normal.
kurius wrote:
Bonjour
J'ai eu la surprise de constater que dans certains cas
l'utilisation d'une variable $foo dans un script pouvait écraser une variable $_SESSION['foo'] sans qu'a aucun moment $_SESSION['foo']=$foo;
Quelqu'un a t'il déja vu ça ? s'il y a une explication rationelle, j'aimerais bien la connaître
--
Merci de votre temps,
*Vincent Fouquereau*
Webmaster - The Crash Site
*http://www.TheCrashSite.com*
De ce que je comprend de ces cas, c'est normal. J'utilise toujours la fonction session_register("foo") pour conserver la syntaxe $foo pour accéder à la variable, c'est à dire éviter d'avoir à toujours écrire $_SESSION['foo']. Dans mes scripts, je commence la session et c'est évident qu'écrire $foo revient à écrire $_SESSION['foo'].
En fin de compte, oui j'ai déjà vu ça et je crois que c'est normal.
kurius wrote:
Bonjour
J'ai eu la surprise de constater que dans certains cas l'utilisation d'une variable $foo dans un script pouvait écraser une variable $_SESSION['foo'] sans qu'a aucun moment $_SESSION['foo']=$foo;
Quelqu'un a t'il déja vu ça ? s'il y a une explication rationelle, j'aimerais bien la connaître
-- Merci de votre temps,
*Vincent Fouquereau* Webmaster - The Crash Site *http://www.TheCrashSite.com*
Geoffrey Audebert
$_SESSION['foo'] est une manière "sécurisé" d'appeler la variable $foo en vérifiant que la variable vient bien d'une session. Aisin si tu fais un : <? session_start(); echo _SESSION['foo']; ?>
ou alors un simple : <? session_start(); echo $foo; ?>
Tu obtiendras exactement la même chose (en dehors des pbs de sécurité bien sûr. en supposant que par la session tu améne la valeur 1 dans ta variable foo, la page va effectivement voir que la cariable "session" foo existe et ainsi si tu fais après un $foo=2; quand tu fera un echo $_SESSION['foo']; tu auras 2 qui s'affichera. Dans l'ordre ça fera : * variable foo vient d'une session = VRAI * affichage de la variable foo : 2 et non plus 1
En espérant avoir été assez clair
Gargan21
$_SESSION['foo'] est une manière "sécurisé" d'appeler la variable $foo en
vérifiant que la variable vient bien d'une session. Aisin si tu fais un :
<?
session_start();
echo _SESSION['foo'];
?>
ou alors un simple :
<?
session_start();
echo $foo;
?>
Tu obtiendras exactement la même chose (en dehors des pbs de sécurité bien
sûr.
en supposant que par la session tu améne la valeur 1 dans ta variable foo,
la page va effectivement voir que la cariable "session" foo existe et ainsi
si tu fais après un $foo=2; quand tu fera un echo $_SESSION['foo']; tu auras
2 qui s'affichera.
Dans l'ordre ça fera :
* variable foo vient d'une session = VRAI
* affichage de la variable foo : 2 et non plus 1
$_SESSION['foo'] est une manière "sécurisé" d'appeler la variable $foo en vérifiant que la variable vient bien d'une session. Aisin si tu fais un : <? session_start(); echo _SESSION['foo']; ?>
ou alors un simple : <? session_start(); echo $foo; ?>
Tu obtiendras exactement la même chose (en dehors des pbs de sécurité bien sûr. en supposant que par la session tu améne la valeur 1 dans ta variable foo, la page va effectivement voir que la cariable "session" foo existe et ainsi si tu fais après un $foo=2; quand tu fera un echo $_SESSION['foo']; tu auras 2 qui s'affichera. Dans l'ordre ça fera : * variable foo vient d'une session = VRAI * affichage de la variable foo : 2 et non plus 1
En espérant avoir été assez clair
Gargan21
RDX
C'est à cause du register_global
si tu as register_global=1 alors tu n'a pas besoin d'indiquer ou se trouve ta variable
du coups $_POST['var'] c'est la même variable que $var $_GET['var'] c'est la même variable que $var $_SESSION['var'] c'est la même variable que $var
par contre si tu veux modifier une variable session tu dois utiliser $_SESSION ou session_register()
-- RDX
"kurius" a écrit dans le message de news:
Bonjour
J'ai eu la surprise de constater que dans certains cas l'utilisation d'une variable $foo dans un script pouvait écraser une variable $_SESSION['foo'] sans qu'a aucun moment $_SESSION['foo']=$foo;
Quelqu'un a t'il déja vu ça ? s'il y a une explication rationelle, j'aimerais bien la connaître
C'est à cause du register_global
si tu as register_global=1
alors tu n'a pas besoin d'indiquer ou se trouve ta variable
du coups
$_POST['var'] c'est la même variable que $var
$_GET['var'] c'est la même variable que $var
$_SESSION['var'] c'est la même variable que $var
par contre si tu veux modifier une variable session tu dois utiliser
$_SESSION ou session_register()
--
RDX
"kurius" <kurius@bzh.net> a écrit dans le message de news:
20030926195531.31d768c6.kurius@bzh.net...
Bonjour
J'ai eu la surprise de constater que dans certains cas
l'utilisation d'une variable $foo dans un script pouvait écraser une
variable $_SESSION['foo'] sans qu'a aucun moment $_SESSION['foo']=$foo;
Quelqu'un a t'il déja vu ça ? s'il y a une explication rationelle,
j'aimerais bien la connaître
si tu as register_global=1 alors tu n'a pas besoin d'indiquer ou se trouve ta variable
du coups $_POST['var'] c'est la même variable que $var $_GET['var'] c'est la même variable que $var $_SESSION['var'] c'est la même variable que $var
par contre si tu veux modifier une variable session tu dois utiliser $_SESSION ou session_register()
-- RDX
"kurius" a écrit dans le message de news:
Bonjour
J'ai eu la surprise de constater que dans certains cas l'utilisation d'une variable $foo dans un script pouvait écraser une variable $_SESSION['foo'] sans qu'a aucun moment $_SESSION['foo']=$foo;
Quelqu'un a t'il déja vu ça ? s'il y a une explication rationelle, j'aimerais bien la connaître