Probleme d affichage d'une liste deroulante

za3zou3TN Messages postés 21 Date d'inscription   Statut Membre Dernière intervention   -  
Pitet Messages postés 2826 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,
sur PHP5, Lors de l'affichage des données de ma BD dans un formulaire, j'ai rencontré un prb d'affichage d'une liste déroulante: dans l'affichage il n'apparait que l'ID;
ici dans mon cas le role de l'utilisateur est une clé étrangère ayant référence à une autre table "roleuser" qui a comme attributs : ID / NomRole;
et dans l'affichage je souhaite avoir le NomRole et nom pas son ID

voici mon code utilisé

<?php include("connect.php"); ?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<TITLE>ADMIN ConsUser</TITLE>
</HEAD>


<BODY>
<?php
$tablrole = array();
$statement = $db-> prepare('SELECT * from utilisateurrole');
//Execution
$statement->execute();
if ($statement->execute())
$tablrole = $statement->fetchAll (PDO::FETCH_OBJ);
$afficher = $db->query ('SELECT * FROM utilisateur');
// On affiche
while ($donnees = $afficher->fetch())
{
?>

<DIV align="center">
<TABLE border=2 >
<TR align="center">
<TD align="center" WIDTH=30% >
<strong>ID :</strong> <BR><?php echo $donnees['IdUtilisateur']; ?><br />
</TD >

<TD align="center" WIDTH=30% >
<strong>Username :</strong> <BR>
<INPUT NAME="Username" TYPE="TEXT" SIZE="20" MAXLENGTH="20"
VALUE= '<?= $donnees['Username'] ?>'/>
</TD>

<TD align="center" WIDTH=30% >
<strong>Password :</strong> <BR>
<INPUT NAME="Password" TYPE="TEXT" SIZE="20" MAXLENGTH="20"
VALUE= '<?= $donnees['Password'] ?>'/>
</TD>

<TD align="center" WIDTH=30% >
<strong>RoleUser :</strong> <BR>

<INPUT NAME="RoleUser" TYPE="TEXT" SIZE="20" MAXLENGTH="20"
VALUE= '<?= $donnees['RoleUser'] ?>'/>
</TD>

<TD align="center">
<INPUT type="submit" value=" Modifier " >
</TD >

<TD align="center">
<INPUT type="reset" value=" Supprimer">
</TD >
</TR>
</TABLE>
<?php
}
$afficher->closeCursor(); // Termine le traitement de la requête
?>
</DIV>
<?php include("footer.php"); ?>
</BODY>
</HTML>
A voir également:

1 réponse

Pitet Messages postés 2826 Date d'inscription   Statut Membre Dernière intervention   527
 
Salut,

Le plus simple est de récupérer la liste des utilisateurs en faisant une jointure avec la table des roles :
SELECT * FROM utilisateur u LEFT JOIN utilisateurrole r ON u.RoleUser = r.ID


Bonne journée
0