monoski
Messages postés132Date d'inscriptionmercredi 15 avril 2009StatutMembreDernière intervention13 mai 2013
-
14 juin 2010 à 13:26
chino18
Messages postés82Date d'inscriptionjeudi 22 avril 2004StatutMembreDernière intervention 1 avril 2011
-
15 juin 2010 à 15:45
J'ai une requête qui affiche une certaine récurrence, mais j'ai du mal à inventer une incrémentation de type +1 dans des noms de variables php est-ce possible ?
Quoiqu'il en soit j'ai un code extrêmement lourd :
<option value="<? echo $idtete;?>" selected="selected"><? echo $fet2['name'];?></option>
<?
if ($fetch['slot1'] == NULL)
{}
else
{
$slot1 = $fetch['slot1'];
$equip2 = mysql_query("SELECT name,id FROM elfik_objet WHERE id='$slot1' AND type='pied'") or die(mysql_error());
$aff = mysql_fetch_assoc($equip2);
$row = mysql_num_rows($equip2);
if($row>0)
{
echo '<option value="',$aff['id'],'">',$aff['name'],'</option>';
}
}
if ($fetch['slot2'] == NULL)
{}
else
{$slot2 = $fetch['slot2'];
$equip3 = mysql_query("SELECT name,id FROM elfik_objet WHERE id='$slot2' AND type='tete' ") or die(mysql_error());
$aff2 = mysql_fetch_assoc($equip3);
$row2 = mysql_num_rows ($equip3);
if($row2>0)
{
echo '<option value="',$aff2['id'],'">',$aff2['name'],'</option>';
}
}
if ($fetch['slot3'] == NULL)
{}
else
{$slot3 = $fetch['slot3'];
$equip4 = mysql_query("SELECT name,id FROM elfik_objet WHERE id='$slot3' AND type='tete' ") or die(mysql_error());
$aff3 = mysql_fetch_assoc($equip4);
$row3 = mysql_num_rows ($equip4);
if($row2>0)
{
echo '<option value="',$aff3['id'],'">',$aff3['name'],'</option>';
}
}
if ($fetch['slot4'] == NULL)
{}
else
{$slot4 = $fetch['slot4'];
$equip5 = mysql_query("SELECT name,id FROM elfik_objet WHERE id='$slot4' AND type='tete' ") or die(mysql_error());
$aff4 = mysql_fetch_assoc($equip5);
$row4 = mysql_num_rows ($equip5);
if($row4>0)
{
echo '<option value="',$aff4['id'],'">',$aff4['name'],'</option>';
}
}
if ($fetch['slot5'] == NULL)
{}
else
{$slot5 = $fetch['slot5'];
$equip6 = mysql_query("SELECT name,id FROM elfik_objet WHERE id='$slot5' AND type='tete' ") or die(mysql_error());
$aff5 = mysql_fetch_assoc($equip6);
$row5 = mysql_num_rows ($equip6);
if($row5>0)
{
echo '<option value="',$aff5['id'],'">',$aff5['name'],'</option>';
}
}
if ($fetch['slot6'] == NULL)
{}
else
{$slot6 = $fetch['slot6'];
$equip7 = mysql_query("SELECT name,id FROM elfik_objet WHERE id='$slot6' AND type='tete' ") or die(mysql_error());
$aff6 = mysql_fetch_assoc($equip7);
$row6 = mysql_num_rows ($equip7);
if($row6>0)
{
echo '<option value="',$aff6['id'],'">',$aff6['name'],'</option>';
}
}
if ($fetch['slot7'] == NULL)
{}
else
{$slot7 = $fetch['slot7'];
$equip8 = mysql_query("SELECT name,id FROM elfik_objet WHERE id='$slot7' AND type='tete' ") or die(mysql_error());
$aff7 = mysql_fetch_assoc($equip8);
$row7 = mysql_num_rows ($equip8);
if($row7>0)
{
echo '<option value="',$aff7['id'],'">',$aff7['name'],'</option>';
}
}
if ($fetch['slot8'] == NULL)
{}
else
{$slot8 = $fetch['slot8'];
$equip9 = mysql_query("SELECT name,id FROM elfik_objet WHERE id='$slot8' AND type='tete' ") or die(mysql_error());
$aff8 = mysql_fetch_assoc($equip9);
$row8 = mysql_num_rows ($equip9);
if($row8>0)
{
echo '<option value="',$aff8['id'],'">',$aff8['name'],'</option>';
}
}
if ($fetch['slot9'] == NULL)
{}
else
{$slot9 = $fetch['slot9'];
$equip10 = mysql_query("SELECT name,id FROM elfik_objet WHERE id='$slot9' AND type='tete' ") or die(mysql_error());
$aff9 = mysql_fetch_assoc($equip10);
$row9 = mysql_num_rows ($equip10);
if($row9>0)
{
echo '<option value="',$aff9['id'],'">',$aff9['name'],'</option>';
}
}
if ($fetch['slot10'] == NULL)
{}
else
{$slot10 = $fetch['slot10'];
$equip11 = mysql_query("SELECT name,id FROM elfik_objet WHERE id='$slot10' AND type='tete' ") or die(mysql_error());
$aff10 = mysql_fetch_assoc($equip11);
$row10 = mysql_num_rows ($equip11);
if($row10>0)
{
echo '<option value="',$aff10['id'],'">',$aff10['name'],'</option>';
}
}
?>
Est-il possible d'optimiser cela via une boucle for() car ma page contient 6 fois ce type d'exemple et c'est ahurissant ^^ ?
Merci pour votre lecture :)
A voir également:
Optimisation d'une requête complexe via boucle for()
Sauf que ça ne marche pas, j'ai du faire une erreur :'(
Je vous tiens au courant dès que j'ai trouvé. Ya peut être des choses que je peux pas écrire comme je l'ai fais. Si quelqu'un détecte des erreurs de syntaxes. :)