générer liste déroulante via php

générer liste déroulante via php - PHP - Programmation

Marsh Posté le 09-05-2011 à 10:57:41    

Salut à tous, je suis sur php depuis 10 jours et j'aimerais qu'on m'explique comment générer une liste déroulante via php. Ma base de données sous Mysql est moto, la table sur laquelle je veux faire ma requête est motard, et le champ concerné est nom  
 
J'utilise cette méthode pour me connecter à la base de donnée :
 
<?php
$db = mysql_connect('localhost','root','');
 
   if (!$db)  
   {
    die('Connexion à la Database impossible : '.mysql_error());
   }
   //sélection de la base de données
   $db_select = mysql_select_db('moto',$db);  
   if (!$db_select)  
          {
          die('Utilisation de base impossible : '.mysql_error());
          }
?>
 
Je cherche en fait à faire un (Select nom
                                       from motard) et afficher tous les noms récupérés dans cette liste déroulante !! voilou !!!
 
Merci d'avance. bye !!

Reply

Marsh Posté le 09-05-2011 à 10:57:41   

Reply

Marsh Posté le 09-05-2011 à 11:12:35    

Bah une fois connecté à la base ya rien de bien compliqué...
http://fr2.php.net/manual/en/function.mysql-query.php
 
Je recommanderais quand même de jeter un oeil à pdo ou mysqli pour faire du boulot propre, mais il n'y a pas de difficulté majeure, là...qu'est-ce qui te bloque?


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 09-05-2011 à 11:34:53    

Merci pour ta réactivité skeye !! Ce qui me bloque, c'est l'affichage du résultat de la requête dans le <select>
                                             ...
                                        </select>
 
Je vois pas trop comment m'y prendre...débutant... :) Je guette le lien...

Reply

Marsh Posté le 09-05-2011 à 11:38:55    

Il suffit de boucler sur les résultats de la requête, tu dois pouvoir trouver pas mal d'exemples sur le web... ;)


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 09-05-2011 à 12:00:42    

arrff ma boucle est bonne, ma requête aussi, mais mon affichage est mauvais, en fait j'ai 4 enregistrements dans ma base et ducoup, j'ai 4 listes déroulantes vides à l'écran :)) Aller sortage de doigts !

Reply

Marsh Posté le 09-05-2011 à 12:02:06    

il faut que ta boucle soit dans le <select>, pas l'inverse. ;)


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 09-05-2011 à 13:27:21    

d'accord ok, déjà un point pour toi :) je teste ça !

Reply

Marsh Posté le 09-05-2011 à 13:48:30    

<?php
try
{
    // On se connecte à MySQL
    $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
    $bdd = new PDO('mysql:host=localhost;dbname=moto', 'root', '', $pdo_options);
     
    // On récupère tout le contenu de la table jeux_video
    $reponse = $bdd->query('SELECT nom FROM motard');
     
    // On affiche chaque entrée une à une
 ?>
 <select name="nom">
 <?php
  while ($donnees = $reponse->fetch())
  {
  ?>
   <p>
   <option value="choix"><?php echo $donnees['nom']; ?></option>
         </p>
  <?php
  }
 ?>
    </select>
 <?php
    $reponse->closeCursor(); // Termine le traitement de la requête
 
}
catch(Exception $e)
{
    // En cas d'erreur précédemment, on affiche un message et on arrête tout
    die('Erreur : '.$e->getMessage());
}
?>
 
 
 
It works :)

Reply

Marsh Posté le 09-05-2011 à 14:04:09    

Dans la foulée, ça serait bien que t'apprennes le HTML : Tu dis que ta boucle marche, sauf que mettre une balise <option> dans une balise <p>, c'est pas possible :/...


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed