Liste déroulante qui n'affiche qu'une ligne [Résolu]

Messages postés
22
Date d'inscription
dimanche 19 juillet 2009
Statut
Membre
Dernière intervention
7 février 2013
- - Dernière réponse : davidson81
Messages postés
22
Date d'inscription
dimanche 19 juillet 2009
Statut
Membre
Dernière intervention
7 février 2013
- 8 sept. 2011 à 12:15
Bonjour,
J'ai un problème de liste déroulante.Quand je fais un choix cela ne m'affiche que une ligne alors qu'il devrait en avoir plusieurs.

voici mon code pour la liste déroulante :
<form name="service" method="post" action="index.php?idpage=3"> 
<select name="service" onchange="submit" > 
<option selected> Choisissez un service</option> 
<?php 
$requete = "SELECT uf,service FROM services order by service"; 
$req = mysql_query($requete) or die( mysql_error() ) ; 

while ($donnees=mysql_fetch_array($req)) 
{ 
$uf = $donnees; 
$service = $donnees; 
?> 
<!-- affichage de la liste déroulante --> 
<option value="<?php echo $service ?>" <?php if ($service == $v_service) { echo 'Selected' ; } ?> ><?php echo $uf." ".$service?></option>
 <?php 
} 
?> 
</select> 
 
</form> 

Cela marche très bien..
C'est la deuxième partie qui pose problème
code affichage du choix
<?php 
if ( isset($_POST['service'])) { $service = $_POST['service']; 

$requete2 = "SELECT COUNT(uf) AS nb,uf,service,cartouche,sortie_stock,date_sortie FROM servcart WHERE uf='$uf' group by uf,service,cartouche,sortie_stock,date_sortie";
 $req2 = mysql_query($requete2) or die( mysql_error() ) ; 

while ($donnees2=mysql_fetch_array($req2)) 
{ 
?> 
<tr> 
<td><?php echo $donnees2 ['uf']; ?></td> 
<td><?php echo $donnees2 ['service']; ?></td> 
<td><?php echo $donnees2 ['cartouche']; ?></td> 
<td><?php echo $donnees2 ['date_sortie']; ?></td> 
<td><?php echo $donnees2 ['sortie_stock']; ?></td> 
</tr> 

<?php 
} 
} 
?> 

Ma requête pour le deuxième code, je l'ai testé sous mysql et cela me renvoye bien ex: uf='4517' me donne bien 5 lignes...
Merci par avance pour votre aide.
Afficher la suite 

5 réponses

Meilleure réponse
Messages postés
22
Date d'inscription
dimanche 19 juillet 2009
Statut
Membre
Dernière intervention
7 février 2013
3
Merci
J'ai trouvé la solution pour ceux que cle interesse la voilà :
<?php

//gestion de la ligne selectionnée
if (isset($_POST))
{$v_service= $_POST;
}
else
{$v_service="";}

if (isset($_POST))
{$date_sortie=$_POST;
}
else
{$date_sortie="";}			

?>	

Statistiques de consommation
----,
<form  name=\"service\" method=\"post\" action=\"index.php?idpage=3\">
<select  name=\"service\"  onchange=\"submit\">
<option selected> Choisissez un service</option>
<?php
$requete = \"SELECT distinct service FROM servcart order by service\";
$req 	= mysql_query($requete) or die( mysql_error() ) ;

while ($donnees=mysql_fetch_array($req))
{

$service = $donnees;
?>
<!-- affichage de la liste déroulante -->
<option value=\"<?php echo $service ?>\" <?php if ($service == $v_service) { echo 'Selected' ; } ?> ><?php echo $service?></option>
<?php
}
?>
</select>

</form>
----

 UF  |
SERVICE |
CARTOUCHE |
DATE |
SORTIE STOCK |

<?php
if ( isset($_POST)
){  $service  = $_POST;

$requete2 = \"SELECT uf,service,cartouche,sortie_stock,date_sortie FROM servcart WHERE service='$service' order by date_sortie\";
$req2 = mysql_query($requete2) or die( mysql_error() ) ;

while ($donnees2=mysql_fetch_array($req2))
{
?>
----

<?php echo $donnees2; ?>,
<?php echo $donnees2; ?>,
<?php echo $donnees2; ?>,
<?php echo $donnees2; ?>,
<?php echo $donnees2; ?>,

<?php
}
}
?>

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 141 internautes nous ont dit merci ce mois-ci

Commenter la réponse de davidson81
Messages postés
1660
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
8
0
Merci
$donnees2 ['sortie_stock']
mais pas d'espace
$donnees2['sortie_stock']


Bonne programmation !
Commenter la réponse de cod57
Messages postés
22
Date d'inscription
dimanche 19 juillet 2009
Statut
Membre
Dernière intervention
7 février 2013
0
Merci
Ce n'est pas cela le problème...merci quand même pour ta réponse...
Commenter la réponse de davidson81
Messages postés
197
Date d'inscription
mardi 20 janvier 2004
Statut
Membre
Dernière intervention
20 février 2013
1
0
Merci
Bonjour,

dans ton tag select, utilise "multiple" et "size" (ex : <select name="service" onchange="submit" multiple="multiple" size="5">

bonne après midi
Commenter la réponse de cs_47
Messages postés
22
Date d'inscription
dimanche 19 juillet 2009
Statut
Membre
Dernière intervention
7 février 2013
0
Merci
Bonjour,
Merci de ta réponse, mais je ne veux pas changer ma liste déroulante,le problème vient du faîte que quand je fais mon choix ,je clic et dans mon tableau, il ne me renvoye que une ligne..
Commenter la réponse de davidson81