Lister une table dans une liste deroulante

samia -  
Reivax962 Messages postés 3742 Statut Membre -
salut tout le monde ....je developpe un sitre web avec la technologie asp.net et je veux afficher le contenu d'une table dans une liste deroulante avec asp.net si quelqu'un peut m'aider merci d'avance
A voir également:

4 réponses

emmanuel95
 
Salut,

ca marche nickel,j'arrive bien à récupérer dans une table des données un champ en particulier et à l' afficher sour forme de liste de choix par contre après je n'arrive pas à récupérer ce choix :o(

Si qqun à une idée

<?php
//Cette fonction doit être appelée avant tout code html
session_start();
//On donne ensuite un titre à la page, puis on appelle notre fichier debut.php
$titre = "Liste basica";
include("includes/debut.php");
?>
<body>
<div id="banniere"></div>
<?php
//Maintenant, on se connecte à la base de données
include("includes/identifiants.php");

$sql = "select basica from applications";
$result = mysql_query($sql);
if (!$result) {
echo "Erreur DB, impossible de lister les tables\n";
echo 'Erreur MySQL : ' . mysql_error();
exit;
}
?>
<form method="post">
<select>
<?php
while ($row = mysql_fetch_row($result))
{
echo '<option value="' .$row[0] .'" name="table">'.$row[0] . '</option>';
}
mysql_free_result($result);
echo '<br><br><br>';
?>
</select>
<input value="Envoyer" name="val" type="submit">
</form>
<br>
<br>
</body>
</html>
-------------------------------------------------------------page devant afficher les informations en fonction du choix de la page davant--------

<?php
//Cette fonction doit être appelée avant tout code html
session_start();
//On donne ensuite un titre à la page, puis on appelle notre fichier debut.php
$titre = "Applications";
include("includes/debut.php");
$requette=$_POST['basica'];
?>
<body>
<div id="banniere"></div>
<?php
//Maintenant, on se connecte à la base de données
include("includes/identifiants.php");
$reponse = mysql_query ("select * from applications where basica = '$requette' ");//je récupere toutes les informations de l'application dont le code basica correspond à notre choix.

?>
<p>

<br/>
<table style="text-align: left; height: 100%; width: 80%;"
border="2" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="height: 30px; width: 20px; text-align: center;" valign="undefined">Basica</td>
<td style="height: 64px; width: 57px; text-align: center;" valign="undefined">nom</td>
<td style="width: 123px; text-align: center;" valign="undefined">Description</td>
<td style="width: 123px; text-align: center;" valign="undefined">Type</td>
<td style="width: 123px; text-align: center;" valign="undefined">Status</td>
<td style="width: 123px; text-align: center;" valign="undefined">Top Sox</td>
<td style="width: 123px; text-align: center;" valign="undefined">Ref FTCARTO</td>

</tr>
<?php
while ($donnees = mysql_fetch_array($reponse) )
{
?>
<tr>
<td style="height: 30px; width: 20px; text-align: center;" valign="undefined"><?php echo $donnees['basica']; ?><br /></td>
<td style="height: 64px; width: 57px; text-align: center;" valign="undefined"><?php echo $donnees['nomappli']; ?><br /></td>
<td style="height: 64px; width: 57px; text-align: left;" valign="undefined"><?php echo $donnees['description']; ?><br /></td>
<td style="height: 64px; width: 57px; text-align: left;" valign="undefined"><?php echo $donnees['type']; ?><br /></td>
<td style="height: 64px; width: 57px; text-align: center;" valign="undefined"><?php echo $donnees['status']; ?><br /></td>
<td style="height: 64px; width: 57px; text-align: center;" valign="undefined"><?php echo $donnees['top sox']; ?><br /></td>
<td style="height: 64px; width: 57px; text-align: center;" valign="undefined"><?php echo $donnees['refftcarto']; ?><br /></td>

</tr>
<?php
}
mysql_close(); // Déconnexion de MySQL
?>
</tbody>
</table>
<table style="text-align: left; height: 100%; width: 80%;"
border="2" cellpadding="2" cellspacing="2">
<tbody><tr><td> cette application fait partie du bouquet x</td><td> cette application fait partie du profil métier y</td></tr>
</tbody>
</table>
<br>
2
boss0211 Messages postés 264 Statut Membre 8
 
avec PHP (asp connais pas dsl) voici ce que sa donne:

<?php
$dbname = 'base_de_donné';

if (!mysql_connect(localhost', 'loggin', 'password')) {
   echo 'Impossible de se connecter à MySQL';
   exit;
}

$sql = "SHOW TABLES FROM $dbname";
$result = mysql_query($sql);

if (!$result) {
   echo "Erreur DB, impossible de lister les tables\n";
   echo 'Erreur MySQL : ' . mysql_error();
   exit;
}
?>
<form method="post">

<select>
<?php
while ($row = mysql_fetch_row($result)) {
   echo '<option value="' .$row[0] .'" name="table">'.$row[0] . '</option>';
}

mysql_free_result($result);
echo '<br><br><br>';
?> 

</select></label>
<input type="submit" value="Envoyer" name="env">
</form>
<br><br>


ta juste a changer les passet nom de sql au début du script et c bon
0
samkil
 
merci je vais tester ;)
0
Reivax962 Messages postés 3742 Statut Membre 1 011
 
Bonjour,

Euh, n'essaie pas d'adapter ce script, ça n'a rien à voir avec du .net !
Déjà, quel langage utilises-tu ? C#, vb ? Il me faut ça si tu veux que je te donne directement du code.

L'idée, c'est de récupérer le résultat de ta requête dans un DataSet ou un DataTable.
Ensuite, l'objet dropdownlist a deux propriétés :
- DataTextField dans lequel tu mets le nom du champ de ta DataTable qui contient le texte qui doit apparaitre ;
- DataValueField dans lequel tu mets le nom du champ de ta DataTable qui contient l'identificateur de l'objet (la clé primaire de ta table, en général)

Tu associes le DataTable (dt) au dropdownlist (ddl) comme ceci :
ddl.DataSource = dt.DefaultView
(Si c'est un DataSet (ds) et non un DataTable, c'est pareil sauf qu'il faut prendre la table du dataset que tu veux :
ddl.DataSource = ds.Tables["Nom table" ou Index].DefaultView
)

Et enfin, il faut lancer la méthode ddl.DataBind() histoire de valider le tout.

J'espère t'avoir aidé,

Xavier
0
Reivax962 Messages postés 3742 Statut Membre 1 011
 
Bonjour,

Alors, quelques erreurs :

- <form method="post"> : attention, tu n'as pas donné le nom de la page à appeler pour le formulaire ! Pense bien à le rajouter : <form method="post" action="ta 2e page.php">

- name="table" : il faut le mettre dans le <select> et non pas dans les <option>

- $requette=$_POST['basica']; : "basica" ne correspond à rien ici ! En fait, les clés du tableau $_POST sont les "name" des éléments du formulaire d'origine. Donc ici, c'est le "name" du <select> que tu recherches. Il faut donc mettre $requette=$_POST['table'];

- valign="undefined" : tu peux virer ce truc qui ne signifie rien ^^

Voilà voilà !

Xavier
0