Variable Php et mysql

Résolu/Fermé
x3c4132de Messages postés 26 Date d'inscription samedi 14 mars 2009 Statut Membre Dernière intervention 9 février 2012 - 9 févr. 2012 à 14:25
Mihawk Messages postés 4315 Date d'inscription mercredi 29 mars 2006 Statut Contributeur Dernière intervention 6 janvier 2015 - 9 févr. 2012 à 14:51
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.


3 réponses

Mickael86480 Messages postés 660 Date d'inscription vendredi 28 mai 2010 Statut Membre Dernière intervention 11 mars 2021 35
Modifié par Mickael86480 le 9/02/2012 à 14:42
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 samedi 14 mars 2009 Statut Membre Dernière intervention 9 février 2012
9 févr. 2012 à 14:38
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 vendredi 28 mai 2010 Statut Membre Dernière intervention 11 mars 2021 35
9 févr. 2012 à 14:41
j'ai fais une erreur je modifie de suite
0
x3c4132de Messages postés 26 Date d'inscription samedi 14 mars 2009 Statut Membre Dernière intervention 9 février 2012
9 févr. 2012 à 14:41
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 mercredi 29 mars 2006 Statut Contributeur Dernière intervention 6 janvier 2015 845
9 févr. 2012 à 14:51
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