récupérer ds une varible le choix effectué dans une liste déroulante

Eléphanteau du PHP | 39 Messages

19 mai 2008, 02:23

pourrai tu mettre ta requete SQL stp
C'est en forgeant qu'on se forge

Eléphanteau du PHP | 10 Messages

19 mai 2008, 02:30

ca ok je vois comment faire mais ce qui me gene c'est que j'ai pas de variable "critere" qui correspond le champ choisi dans le menu deroulant. je suis obligé de travailler avec un des champs defini dans ma base.

<?php
$critere=$_POST['critere'];


mysql_connect("localhost", "root", ""); // Connexion à MySQL
mysql_select_db("tests"); // Sélection de la base 
$reponse = mysql_query("SELECT * FROM classement")or die(mysql_error()); // Requête SQL (optimisée)

while ($donnée = mysql_fetch_array($reponse))
{
?>
    <p>
<?php echo $donnée['Id']; ?>
<?php echo $donnée['Joueur']; ?>
<?php echo $donnée['$critere']; // la variable correspondant à la table choisie selon le critère ?>
      <br />
    </p>
<?php
}
mysql_close(); // Déconnexion de MySQL
?> 

Mammouth du PHP | 2937 Messages

19 mai 2008, 11:16

Comment as-tu construit ta base de données ?

Eléphanteau du PHP | 39 Messages

19 mai 2008, 15:06

mais ce qui me pose problème c'est de récupérer (dans une varible) le choix fait dans la liste déroulante, de l'afficher et d'afficher les données du critères choisis.
Si je comprend bien tu veut afficher des données de ta BDD en fonction du choix de ta liste déroulante et plus précisément en fonction de ta variable 'critere' ?

Pour cela, il faut peut etre revoir ta requete SQL en lui mettant une condition

Code : Tout sélectionner

SELECT * FROM classement WHERE critere='$critere'
Mais je ne suis pas sure d'avoir précisément compris ta demande...
C'est en forgeant qu'on se forge

Invité
Invité n'ayant pas de compte PHPfrance

19 mai 2008, 18:02

re à tous,

est ce que les codes suivant sont correctes ou dèjà c'est du n'importe quoi?
echo $choix;
echo $donnee[$choix];
choix est la variable qui recupere le contenu du menu deroulant.
je veux donc afficher ce contenu, par exemple "points au 2e tour" et
je veux afficher le contenu du champ, dc "points au 2e tour" de ma base de données.


voila ou j'en suis.

<form name="form1" method="POST" action="essai.php">
<div align="left">
<select name="critere" >
<option value="points au 1er tour">points au 1er tour</option>
<option value="points au 2e tour">points au 2e tour</option>
<option value="points (total)">points (total)</option>
</select>
</div>
</form>



<?php
mysql_connect("localhost", "root", ""); // Connexion à MySQL
mysql_select_db("tests"); // Sélection de la base 

$choix = $_POST['critere'];
$reponse = mysql_query("SELECT * From classement")or die(mysql_error()); // Requête SQL (optimisée)
echo $choix;

while ($donnee = mysql_fetch_array($reponse))
{
?>

   <table>
   <tr>
       <td><?php echo $donnee['id']; ?></td>
       <td><?php echo $donnee['joueur']; ?></td>
       <td><?php echo $donnee[$choix];  ?></td>
   </tr>
   </table>
   
<?php
}
mysql_close(); // Déconnexion de MySQL
?>