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 04/06/2008, 22h27   #1
lvr
Membre éclairé
 
Avatar de lvr
 
Inscription : avril 2006
Messages : 505
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 505
Points : 377
Points : 377
Par défaut Interférences étranges entre variables et sessions

Bonjour,

Je viens de faire une correction dans mon code et ça marche. Le seul -, c'est que je ne comprends a) pourquoi ça ne marchait pas avant, b) pourquoi ça marche maintenant. Ca me semble dingue comme problème.

Dans l'appel 1, j'ai
$_SESSION['reg'] qui vaut 17
Puis je fais une requête mysql et je mémorise le résultat comme ceci:
Code :
1
2
$resSQL = mysql_query($sql); 
$reg = mysql_fetch_row($resSQL);
Dans l'appel 2 (depuis un lien sur la page générée par l'appel 1), je vérifie $_SESSION['reg'] et j'y trouve l'array du mysql_fetch_row($resSQL) de l'appel 1. Entre les deux codes, je ne mets aucune valeur dans $_SESSION['reg'] !!!

Si dans l'appel 1 je change le nom de la variable $reg et j'écris
Code :
1
2
$resSQL = mysql_query($sql); 
$regWXYZ = mysql_fetch_row($resSQL);
alors dans l'appel 2 $_SESSION['reg'] vaut correctement 17.

Je vous le jure, c'est la seule modif que j'ai faite !!!!!!
Je ne comprends pas. C'est comme-ci il y a avait confusion entre les objets de même nom quelque part....
lvr est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/06/2008, 22h57   #2
Futur Membre du Club
 
Inscription : octobre 2006
Messages : 34
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 34
Points : 15
Points : 15
c'est peut être dû au register globals = on essaye de le passer a off pour tester.
Cobax est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2008, 10h00   #3
Rédacteur/Modérateur
 
Avatar de N1bus
 
Inscription : janvier 2003
Messages : 2 018
Détails du profil
Informations personnelles :
Âge : 47
Localisation : France, Charente Maritime (Poitou Charente)

Informations forums :
Inscription : janvier 2003
Messages : 2 018
Points : 1 992
Points : 1 992
Bonjour,

mysql_fetch_row() retourne un tableau.

Tu dois extraire une ligne du tableau avant de l'assigner à $reg :

Code :
1
2
3
4
 
$resSQL = mysql_query($sql); 
$row = mysql_fetch_row($resSQL);
$reg = $row[0];
N1bus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/06/2008, 11h40   #4
lvr
Membre éclairé
 
Avatar de lvr
 
Inscription : avril 2006
Messages : 505
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 505
Points : 377
Points : 377
Citation:
Tu dois extraire une ligne du tableau avant de l'assigner à $reg :
Ca je fais !
Je vais essayer cette histoire de Globals.
Merci.
lvr 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 01h50.


 
 
 
 
Partenaires

Hébergement Web