Page 1 sur 1

Incrémentation d'une variable

Posté : 24 mars 2007, 21:10
par djeek9006
Bonjour,
alors j'ai un probleme car je suis en possession d'un tableau, et j'aimerais attribuer une variables à chaque éléments : voici le code :
$n = '1';		
$rslt = requete SQL

while( $row = mysql_fetch_assoc( $rslt ) ) 
			{ 		echo ''.$row["pseudo"].'' ;
					${variable$n}= "'.$row["pseudo"].'" ;
					$n = '$n + 1';
			}	
En gros j'aimerais avoir

variable1=josé
variable2=rené
....
variablen=georgette

Le while permet de faire la boucle, mais je n'arrive pas à incrémenter le $n...
Et il y aurait une erreur à la ligne
${variable$n}= "'.$row["pseudo"].'" ;
Si quelqu'un peut m'aider...
Merci.

Posté : 24 mars 2007, 23:06
par orgerix
Permièrement
echo ''.$row["pseudo"].'' ; 
Supprime les guillements et les concaténations qui ne servent à rien car tu rajoute à la variable des chaines vides...

Deuxièmement
${variable$n}= "'.$row["pseudo"].'"
pareil, rien que dans l'analyseur tu vois que ca marche pas.

Troisièmement
$n = '1';
[...]
$n = '$n + 1';  
Ce code est meilleur
$n = 1;
[...]
$n = $n++;  
Enfin, ton problème en temps que tel.

Déjà, il me semble que ca serait plutot ca :
$variable{$n}=

Cependant, je ne suis pas sur que ca marche. Je te conseille donc d'utiliser plutot un tableau, ce qui donne :
$variable["$n"]=

De plus, tu pourra ensuite utiliser des fonctions de traitement de tableau style foreach, sort, etc...

Posté : 25 mars 2007, 10:21
par Expreg
Tu ferais mieux d'utiliser un array() que d'utiliser un truc bancal à souhait.
<?php
$i=1;
while($row = mysql_fetch_assoc( $rslt ))
{
$tableau[$i]=$row['pseudo'];
$i++;
}
?>

Posté : 25 mars 2007, 19:48
par Invité
Un autre choix si tu veux conserver les concaténations. :
$n = 1;        
$rslt = requete SQL

while( $row = mysql_fetch_array( $rslt ) ) 
            {      echo $row["pseudo"] ;
                    $cle = '$variable.$n';
                    $tab[$cle]= $row["pseudo"] ;
                    $n++;
            } 
Tu auras ainsi un tableau où la clef sera "variablen" et la valeur $row["pseudo"] à la valeur n.

Posté : 25 mars 2007, 19:50
par Aureusms
C'est moi le dernier message...