boucle et données SQL

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : boucle et données SQL

par Snipy » 30 déc. 2007, 00:42

Merci j'ai pu prendre ton bout de code pour l'adapter.

Merci beaucoup :)

A savoir : au cas ou ce topic interesse d'autres personnes (on sait jamais :) )

Il faut rajouter $x++; dans la première boucle :)

Bonne soirée

par Patriboom » 29 déc. 2007, 22:24

Il semble que oui, il faudrait faire passer ta boucle fetch en premier et envoyer ses données dans un tableau, comme suit:
       x = 0;
       $liste_joueurs = mysql_query('SELECT id,  prenom, nom FROM joueurs WHERE id_equipe='.$_SESSION['id_equipe']);
        while($liste_joueurs2 = mysql_fetch_assoc($liste_joueurs))  {
            $NomJoueur[$x] = $liste_joueurs2['prenom'].' '.$liste_joueurs2['nom'];
            $IdJoueur[$x] =  $liste_joueurs2['id'];
        }

   echo '<form action="feuille_match.php" method="post">';

    
    $i = 1;

    while ( $i < 5 )      {
        echo '<p><select name="poste'.$i.'">';
        
        for ($x=0; $x<count($IdJoueur); $x++)    {
            echo '<option value="'.$IdJoueur[$x].'">'.$NomJoueur[$x].'</option>';
        }
    
       echo "</select> </p>";
       $i++;
    }
    ?>
    
    </form>

boucle et données SQL

par Snipy » 29 déc. 2007, 20:25

Bonsoir :)

J'ai besoin d'un petit conseil.
La réponse à mon problème doit être simple je pense.
Donc voici mon code
	<form action="feuille_match.php" method="post">

	<?php
	$liste_joueurs = mysql_query('SELECT id,  prenom, nom FROM joueurs WHERE id_equipe='.$_SESSION['id_equipe']);
	
	$i = 1;

	while ( $i < 5 )
	{
		echo '<p><select name="poste'.$i.'">';
		
		while($liste_joueurs2 = mysql_fetch_assoc($liste_joueurs))
		{
			echo '<option value="'.$liste_joueurs2['id'].'">'.$liste_joueurs2['prenom'].' '.$liste_joueurs2['nom'].'</option>';
		}
	
		 echo "</select> </p>";
	$i++;
	}
	?>
	
	</form>
Evidemment logiquement 5 listes déroulantes sont crées mais seul la première contient ma liste de joueur ce qui est je pense normal car $liste_joueurs2 = mysql_fetch_assoc($liste_joueurs) ne peux s'exequter qu'une seule fois.

Alors dois je plutot mettre mes joueurs dans un array avant la boucle? ou autre ?

Merci d'avance et bonne soirée :)