Variable Php et mysql

Résolu
x3c4132de Messages postés 26 Date d'inscription   Statut Membre Dernière intervention   -  
Mihawk Messages postés 4315 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Supposons que j'ai la table MySQL suivante :

id | var1 | var2 | var 3 | ...
1 | 0 | 1 | 2 |
2 | 5 | 3 | 1 |
3 | 0 | 0 | 2 |

Et ma question est : comment fait-on pour que par exemple

$reponse = mysql_query('SELECT * FROM table ');
while($donnees = mysql_fetch_array($reponse)) {
$_SESSION[$donnees['id']]['var1' ] = $donnees['var1']
$_SESSION[$donnees['id']]['var2' ] = $donnees['var2']
$_SESSION[$donnees['id']]['var2' ] = $donnees['var3']
}

Je ne sais pas comment exprimer ma question c'est pourquoi je fais appel à vous. Je voudrais à la place des 3 lignes (dans le while) une seul pour que si je rajoute dans ma table var4, var5 etc. j'ai toute les variables qui soient bien ajouter à $_SESSION[i] (ici avec i=1,2 ou3).

Merci pour vos réponses.


A voir également:

3 réponses

Mickael86480 Messages postés 660 Date d'inscription   Statut Membre Dernière intervention   35
 
Je sais pas si ça peut t'aider mais j'ai pensé à ceci :

$reponse = mysql_query('SELECT * FROM table '); 
$nb = mysql_num_rows($reponse); 
while($donnees = mysql_fetch_array($reponse)) { 
for($i=1; $i<$nb; $i++){ 
$_SESSION[$donnees['id']]['var'.$i.'' ] = $donnees['var'.$i.'']; 
} 
}
1
x3c4132de Messages postés 26 Date d'inscription   Statut Membre Dernière intervention  
 
Je ne pensais pas appeler mes variables var1, var2, ... mais c'est vrai que comme ça c'est une idée.
Merci bien/
0
Mickael86480 Messages postés 660 Date d'inscription   Statut Membre Dernière intervention   35
 
j'ai fais une erreur je modifie de suite
0
x3c4132de Messages postés 26 Date d'inscription   Statut Membre Dernière intervention  
 
Est-ce que les variables $_SESSION sont "sécurisées", je voulais faire ça pour éviter de faire des vérifications à chaque fois ?
0
Mihawk Messages postés 4315 Date d'inscription   Statut Contributeur Dernière intervention   846
 
Hey !
Ne vas pas trop vite ! Commence par récupérer toutes tes données et les insérer dans un tableau normal, et ensuite tu les mets en session.

Mais c'est vrai que soit tu passes par une boucle, soit tu appelles chaque variables par son nom :

$reponse = mysql_query('SELECT * FROM table '); 
$nb = mysql_num_rows($reponse); 
while($donnees = mysql_fetch_array($reponse)) { 
   $_SESSION[$donnees['id']]['maVar1'] = $donnees['maVar1']; 
   $_SESSION[$donnees['id']]['maVar2'] = $donnees['maVar2']; 
}


Cette solution est plus chiante car chaque ajout de variable en base nécessite d'ajouter des lignes dans les méthodes de récupération. Mais ton code sera bien plus lisible ; pense aussi à ça !

0