Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 16/11/2011, 11h21   #1
Invité de passage
 
Inscription : mars 2006
Messages : 7
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 7
Points : 1
Points : 1
Par défaut Pb pour incrémenter

Bonjour,
je vais essayer d'etre clair dans mes explications.
J'ai une requete qui me renvoie x lignes de résultats.
Ces x résultats vont me servir pour un formulaire.
Je voudrais nommer les input text en les incrémentant de 1 à chaque resultat.
Au final il me faudrait des input text choixIng1,choixIng2... Qte1, Qte2... Unite1,Unite2...
Est-ce que quelqu'un peut me mettre sur la piste ?
Merci à tous

Voici mon code :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
$ingredient=mysql_query("select i.Ingredient,i.NumeroLot,s.IdIngredient,s.NumeroLot,s.Unite,s.DLUO,s.Qte from Ingredients i,StockIngredients s where i.NumeroLot like s.NumeroLot and i.Ingredient like '".$row['Ing1']."%' group by s.NumeroLot order by s.DLUO");
$nombre = mysql_num_rows($ingredient);
							
while ($row2=mysql_fetch_array($ingredient))
{
if($row['Unite1']=="l")
$unite="litres";
else if($row['Unite1']=="gr")
$unite="grammes";
else if($row['Unite1']=="kg")
$unite="kilos";
else if($row['Unite1']=="cl")
$unite="centilitres";
else if($row['Unite1']=="p")
$unite="pièces";
							
$poidsT=$_POST['Litrage']*$row['poids1'];
							
echo "
<tr>
<td height='10' valign='middle' class='LienBordeaux' width='20%'>
<input type='hidden' name='choixIng' value='".$row2['IdIngredient']."'>
- ".$row2['Ingredient']." </td>
<td width='15%'> ".$row2['NumeroLot']."</td>
<td width='20%'> <b>".date_to_fr($row2['DLUO'])."</b> </td>
<td width='15%'> ".number_format($row2['Qte'],2)." ".$row2['Unite']."</td>
<td width='30%'>Qté&nbsp;&nbsp;<input type='text' name='Qte'  id='' size='10'>&nbsp;&nbsp;Unite&nbsp;&nbsp;<select name='Unite' class='menu'>
<option value=''>&nbsp;</option>";
$unite=mysql_query("select * from Unite order by IdUnite");
while ($row3=mysql_fetch_array($unite))
{
echo "<option value=".$row3['Unite'].">".$row3['Unite']."</option>";
}
 echo "
</select>
</tr>";
}}
sourisleo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/11/2011, 11h38   #2
Membre éclairé
 
Avatar de Nowwis
 
Homme
Développeur Web
Inscription : juin 2009
Messages : 363
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 21
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : juin 2009
Messages : 363
Points : 365
Points : 365
Salut,

Il suffit d'ajouter une $i

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
$ingredient=mysql_query("select i.Ingredient,i.NumeroLot,s.IdIngredient,s.NumeroLot,s.Unite,s.DLUO,s.Qte from Ingredients i,StockIngredients s where i.NumeroLot like s.NumeroLot and i.Ingredient like '".$row['Ing1']."%' group by s.NumeroLot order by s.DLUO");
$nombre = mysql_num_rows($ingredient);
 
$i=0
 
while ($row2=mysql_fetch_array($ingredient))
{
if($row['Unite1']=="l")
$unite="litres";
else if($row['Unite1']=="gr")
$unite="grammes";
else if($row['Unite1']=="kg")
$unite="kilos";
else if($row['Unite1']=="cl")
$unite="centilitres";
else if($row['Unite1']=="p")
$unite="pièces";
 
$poidsT=$_POST['Litrage']*$row['poids1'];
 
echo "
<tr>
<td height='10' valign='middle' class='LienBordeaux' width='20%'>
<input type='hidden' name='choixIng[<?php echo $i ?>]' value='".$row2['IdIngredient']."'>
- ".$row2['Ingredient']." </td>
<td width='15%'> ".$row2['NumeroLot']."</td>
<td width='20%'> <b>".date_to_fr($row2['DLUO'])."</b> </td>
<td width='15%'> ".number_format($row2['Qte'],2)." ".$row2['Unite']."</td>
<td width='30%'>Qté&nbsp;&nbsp;<input type='text' name='Qte[<?php echo $i ?>]'  id='' size='10'>&nbsp;&nbsp;Unite&nbsp;&nbsp;<select name='Unite[<?php echo $i ?>]' class='menu'>
<option value=''>&nbsp;</option>";
$unite=mysql_query("select * from Unite order by IdUnite");
while ($row3=mysql_fetch_array($unite))
{
echo "<option value=".$row3['Unite'].">".$row3['Unite']."</option>";
}
 echo "
</select>
</tr>";
$i++;
}}
Nowwis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/11/2011, 12h06   #3
Invité de passage
 
Inscription : mars 2006
Messages : 7
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 7
Points : 1
Points : 1
Merci j'ai juste déplacer le $i++ dans ma boucle pour que cela fonctionne comme je le desirais
Bonne journée à tous et encore merci à simdu80
sourisleo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/11/2011, 12h09   #4
Membre éclairé
 
Avatar de Nowwis
 
Homme
Développeur Web
Inscription : juin 2009
Messages : 363
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 21
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : juin 2009
Messages : 363
Points : 365
Points : 365
Pas de soucis, effectivement faut le mettre en début de boucle si tu veux avoir en premier "1". Sinon mettre le $i=1 en premier au lieu de 0.

Bonne journée !


PS : Un petit tag "Résolu" s'il te plait
Nowwis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/11/2011, 12h28   #5
Invité de passage
 
Inscription : mars 2006
Messages : 7
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 7
Points : 1
Points : 1
oups désolée
c'est fait

Bon développement à tous !
sourisleo est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h39.


 
 
 
 
Partenaires

Hébergement Web