Aliùmenter liste deroulante avec une base SQL [Résolu]

Signaler
Messages postés
61
Date d'inscription
mercredi 1 mars 2006
Statut
Membre
Dernière intervention
6 août 2009
-
Messages postés
61
Date d'inscription
mercredi 1 mars 2006
Statut
Membre
Dernière intervention
6 août 2009
-
Bonjour à tous.

Je sui débutant sous php et je rencontre un problème qui j'en suis sûr est pour vous une simple formalité.

J'ai dans un premier temps créer une page nomé index.html dans laquelle figure une liste de bouton radio. Je fais ensuite apparaitre via une instruction PHP le choix de l'utilisateur dans une segonde page nommée authentification.php dont voici le code

***************************
<?php
    echo "Reporting : " . $_POST['reporting'] . "
";
?>
 
***************************

dans un deuxieme temps, je voudrais faire apparaitre dans une liste deroulante les champs nommé "nom_groupe" de la table "groupe" (et ce dans l'ordre alphabétique) voici ce que j'ai composé mais ma liste ne s'enrichi pas

***************************
<form method="POST" action="authentification.php">
 
  <select size="1" name="liste_groupe">
  <?php
  $host="127.0.0.1";
  $user="root";
  $password="";
  $database="conquete";
 
$connexion=mysqli_connect($host,$user,$password,$database) or die ("erreur");
$SQL = "SELECT * FROM groupe";
$res = mysql_query($SQL);

while($val=mysql_fetch_array($res))
    {
echo "<option>".$val["nom_groupe"]."</option>\n";
    }   
   ?>
****************************
merci d'avance de votre aide

bonne soirée
ydu

5 réponses

Messages postés
61
Date d'inscription
mercredi 1 mars 2006
Statut
Membre
Dernière intervention
6 août 2009

Bonjour,

Juste un petit POST pour vous faire part du code qui a resolu mon probleme

bonne journée
@+

*************************************************
<select name="menugroupe" id="menugroupe">
<?php
$resultat=mysql_query("select nom_groupe from groupe order by nom_groupe") or die ("requète non executé");
if (! $resultat) { echo "Erreur requete"; exit;}
while ($ligne=mysql_fetch_array($resultat))
{
?>
<option><?php echo ''.$ligne['nom_groupe'].'';?> </option>
<?php
}
mysql_close($connexion);
?>
<?php echo $_POST['menugroupe']; ?>

*************************************************

ydu
Messages postés
7
Date d'inscription
lundi 1 octobre 2007
Statut
Membre
Dernière intervention
8 janvier 2010

Salut,

Il me semble que tu ne peux pas sélectionné ta base directement dans l'instruction mysql_connect. Procède en deux étapes :

// tu te connectes au serveur MySQL
$connexion=mysql_connect($host,$user,$password) or die ("erreur");

// tu te connectes à ta base
if(!mysql_select_db($database)) die("Erreur de connexion à la base");

En tout cas chez moi ça fonctionne tres bien comme ça
Messages postés
61
Date d'inscription
mercredi 1 mars 2006
Statut
Membre
Dernière intervention
6 août 2009

Salut,

Tout d'abord merci pour ta réponse Declic57.

Malmgré tes recommandations, je reste bloquer voici ci dessous le code corrigé:

***********************************************
<form method= "POST" action="authentification.php">
 
  <select size="1" name="liste_groupe">
  <?php
  $host="127.0.0.1";
  $user="root";
  $password="";
  $database="conquete";

$connexion=mysqli_connect($host,$user,$password) or die ("erreur");
if(!mysql_select_db($database)) die("Erreur de connexion à la base");
$SQL = SELECT * FROM 'groupe' ORDER BY 'groupe'.'nom_groupe' ASC;
$res = mysql_query($SQL);
while($val=mysql_fetch_array($res))
    {
   echo "<option>".$val."</option>\n";
    }
  ?>
***************************************************

voici ensuite le message d'erreur

*****************************
Parse error : parse error, unexpected T_CONSTANT_ENCAPSED_STRING in C:\Program Files\EasyPHP 2.0b1\www\authentification.php on line 37
==> vous avez en rouge la ligne de code numero37

merci d'avance pour votre aide

ydu
Messages postés
7
Date d'inscription
lundi 1 octobre 2007
Statut
Membre
Dernière intervention
8 janvier 2010

Salut,

Il te manque les doubles quottes pour délimiter la requettes :
$SQL = "SELECT * FROM groupe ORDER BY groupe, nom_groupe ASC";

Voilà !

Ben
Messages postés
61
Date d'inscription
mercredi 1 mars 2006
Statut
Membre
Dernière intervention
6 août 2009

Salut Declic57,

Merci pour le coup de main, effectivement je n'ai plus l'erreur mais ma liste ne se remplie pas.
Je commence a me demander si mon php s'execute bien voici mon script php dans son inegralité

****************************
<?php
    echo "Reporting : " . $_POST['reporting'] . "
";
    ?>
   

<form method="POST" action="authentification.php">
 
  <select size="1" name="liste_groupe">
  <?php
  $host="127.0.0.1";
  $user="root";
  $password="";
  $database="conquete";

 $connexion=mysqli_connect($host,$user,$password) or die ("erreur");
if(!mysql_select_db($database)) die("Erreur de connexion à la base");
$SQL = "SELECT * FROM groupe ORDER BY groupe, nom_groupe ASC";
$res = mysql_query($SQL);
while($val=mysql_fetch_array($res))
    {
   echo "<option>".$val."</option>\n";
    }
  ?>
**************************
Je me demandias aussi si  le fait de se connecter a ma base SQL par la ligne $connexion=mysqli_connect($host,$user,$password) or die ("erreur");

est une operation a eddectuer a chaque fois que je comppose un script PHP faisant appel a une de mes bases.

Merci d'avance

ydu