[résolu][php] pb variable dynamique

pb variable dynamique [résolu][php] - PHP - Programmation

Marsh Posté le 15-05-2004 à 10:50:54    

Slt a tous !!!
 
Donc voila mon petit probleme... :pt1cable:
http://totofoot.free.fr/class.jpg
 
Voila un bou de mon script :
<tr>
<td><input name=pos1 maxlength=1 size=2></td>
<td>$team1[0]</td>
<td><input name=gagne1 maxlength=1 size=2></td>
<td><input name=nul1 maxlength=1 size=2></td>
<td><input name=perdu1 maxlength=1 size=2></td>
<td><input name=pour1 maxlength=3 size=4></td>
<td><input name=contre1 maxlength=3 size=4></td>
</tr>

 
Et c la ke je comprends po  :??: , j'ai bo avoir lu [et relu !!]le tuto de php.net, que je nai toujours pa compri le principe des variables dynamiques :sarcastic:  
 
donc voila mon objectif, c d'utilisé une boucle pour créer les 6 lignes (c fé) et de coller l'iterant a la variable
 
ex :
boucle n°1 ==> $i=1
<input name=pos[$i]>
 
boucle n°2 ==> $i=2
<input name=pos[$i]>
etc...
 
pour avoir des variables dont le nom est pos1 , pos2, pos3, ...
 
ca doi etre tou bete, mai bon  :ange:  
 
merci ++


Message édité par djezus le 16-05-2004 à 10:14:19
Reply

Marsh Posté le 15-05-2004 à 10:50:54   

Reply

Marsh Posté le 15-05-2004 à 11:11:41    

bon déjà, tu fait ton code html plus proprement:

Code :
  1. <tr>
  2. <td><input name="pos1" maxlength="1" size="2"></td>
  3. <td>$team1[0]</td>
  4. <td><input name="gagne1" maxlength="1" size="2"></td>
  5. <td><input name="nul1" maxlength="1" size="2"></td>
  6. <td><input name="perdu1" maxlength="1" size="2"></td>
  7. <td><input name="pour1" maxlength="3" size="4"></td>
  8. <td><input name="contre1" maxlength="3" size="4"></td>
  9. </tr>


 
Ensuite pour ton problème, tu peux récupérer tes variables comme ca:

Code :
  1. echo '<input name="'.${pos.$i}.'">....      ';

Reply

Marsh Posté le 15-05-2004 à 12:20:34    

djezus a écrit :

Slt a tous !!!
donc voila mon objectif, c d'utilisé une boucle pour créer les 6 lignes (c fé) et de coller l'iterant a la variable  
 
ex :  
boucle n°1 ==> $i=1
<input name=pos[$i]>
 
boucle n°2 ==> $i=2
<input name=pos[$i]>
etc...


 
Par exemple :
 

Code :
  1. for ($i = 0; $i < 6; $i++) {
  2.    echo '<tr>
  3.    <td><input name="pos['.$i.']" maxlength="1" size="2" /></td>
  4.    <td>$team1[0]</td>
  5.    <td><input name="gagne['.$i.']" maxlength="1" size="2" /></td>
  6.    // etc...
  7.    </tr>';
  8. }


 
Edit - tu peux aussi faire ça comme ça :
 

Code :
  1. for ($i = 0; $i < 6; $i++) {
  2.    echo '<tr>
  3.    <td><input name="pos[]" maxlength="1" size="2" /></td>
  4.    <td>$team1[0]</td>
  5.    <td><input name="gagne[]" maxlength="1" size="2" /></td>
  6.    // etc...
  7.    </tr>';
  8. }


Message édité par sielfried le 15-05-2004 à 13:18:22

---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 16-05-2004 à 00:03:08    

merci pour votre aide  :)  
 
mais il y a encore une chose qui cloche  :??:  
 
lorsque je fais :
 
$team1[0] = "Angleterre";
$team2[0] = "Ecosse";
$team3[0] = "France";
$i=1;
 
while ($i<=6) {
$equipe = "team[$i]";
echo "$$equipe[0]";    // et si je fais ${$equipe}[0] comme dans la doc, pareil  :sarcastic:
$i++;  
}

 
il m'affiche :
 
$team1[0]
$team2[0]
$team3[0]

 
 :(  :??:  :pt1cable:  
 
pkoi ?
 
merci


Message édité par djezus le 16-05-2004 à 00:04:05
Reply

Marsh Posté le 16-05-2004 à 00:14:27    

Code :
  1. $team = array("Angleterre", "Ecosse", "France" );
  2. $i=0;
  3. while ($i<=6) {
  4.   echo $team[$i++]; 
  5. }


 
tested et approuvaid [:dawa]


Message édité par Profil supprimé le 16-05-2004 à 02:16:18
Reply

Marsh Posté le 16-05-2004 à 02:11:04    


 
Parce que PHP parse $equipe et pas $equipe[] quand il est dans une chaine (ou plus simplement, php ne cherche pas à savoir si ta variable est un tableau, il voit $equipe, il le reconnait comme une variable et il remplace)

Reply

Marsh Posté le 16-05-2004 à 10:13:03    

:cry:  :cry:  :cry:  
 
Jdoi etre plu bete ke la moyenne, mai chez moi ca ne marche pa ta soluce chacal_one333  :cry:  :cry:  
 
donc je di :
 
tested & un-approuvaid  :D  
 
mai sinon en fait jai trouver un autre moyen, et je n'utlise plu les index variables...
 
mai just pour ma culture php, jaurai aimer savoir commen faire une variable dynamique  :sarcastic:  
 
si apre la théorie tu aurai la pratique, ca minterresse naceroth
 
en tou cas merci a tous de vou etes creusé la tete pour moi  ;)  
 
++

Reply

Marsh Posté le 16-05-2004 à 10:36:32    

une variable dynamique ca se fait comme je te l'ai indiqué plus haut.
Enfin y'a de bien meilleures facons de coder que ca.

Reply

Marsh Posté le 16-05-2004 à 17:41:25    

djezus a écrit :


si apre la théorie tu aurai la pratique, ca minterresse naceroth


 
en fait, c'est bien ${$equipe}[0], ton problème se situe dans la manière dont tu écris $equipe, ce n'est pas $equipe = "team[$i]" mais $equipe = "team$i". Et pour t'éviter les soucis de quote, ne les mets pas quand tu as pas de chaine à écrire :D

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed