Liste déroulante et base de données [Résolu]

flopad 531 Messages postés mercredi 28 septembre 2005Date d'inscription 6 mars 2009 Dernière intervention - 7 févr. 2006 à 11:41 - Dernière réponse : sidf 1218 Messages postés mardi 20 décembre 2005Date d'inscription 18 octobre 2012 Dernière intervention
- 8 févr. 2006 à 09:01
Salut tout le monde!!

J'ai une base de données contenant des références. Je veux donner la possibilité aux users de rechercher via une liste déroulante dans ma bdd. Pour cela, je voudrais afficher dans une liste déroulante toutes les entrées différentes d'une même colonne.
Comment est ce que je peux faire ça????

Merci d'avance!!
Afficher la suite 

Votre réponse

23 réponses

Meilleure réponse
FhX 2368 Messages postés mercredi 13 octobre 2004Date d'inscription 18 avril 2015 Dernière intervention - 7 févr. 2006 à 23:29
3
Merci
Certainement pas !!!
Tu tournes en rond la :)

$res = odbc_exec( $cnx, "SELECT Agence_filiale from References" );

while ( odbc_fetch_row($res) ) {
$agence = odbc_result($res, 'Agence_filiale');
echo $agence;
}

Et la ca marche :)

Suffit de lire la doc quand c'est comme ca.
http://fr.php.net/manual/fr/function.odbc-result.php
http://fr.php.net/manual/fr/function.odbc-fetch-row.php

Et y'a pas besoin de plus clair !

Merci FhX 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 93 internautes ce mois-ci

Commenter la réponse de FhX
sidf 1218 Messages postés mardi 20 décembre 2005Date d'inscription 18 octobre 2012 Dernière intervention - 7 févr. 2006 à 11:49
0
Merci
tu fais une requete de tes references et tu alimentes
les balises options d'un select en boucle

$sql="select reference from table_reference order by reference";
$res=mysql_query($sql);

...

echo "<select name='ref'>";

while($row=mysql_fetch_array($res))
{
echo "<option value=' ".$row['reference']." '>";
echo $row['reference'];
echo "</option>";
}
echo "</select>";

un truc dans le genre
Commenter la réponse de sidf
obcstaff 147 Messages postés mardi 15 novembre 2005Date d'inscription 28 janvier 2008 Dernière intervention - 7 févr. 2006 à 11:52
0
Merci
<?

$sql = "SELECT * FROM table";

$result = mysql_query ($sql);

?>



<form action='page.php' method='post'>

<select>

<?while($result2 = mysql_fetch_object ($result))

{


echo("
<option value='num_reference'>$result2->reference</option> ");

}

?>

</select>

</form>
Commenter la réponse de obcstaff
obcstaff 147 Messages postés mardi 15 novembre 2005Date d'inscription 28 janvier 2008 Dernière intervention - 7 févr. 2006 à 11:53
0
Merci
meme pas le temps de taper mon code ke sidf a deja mis le sien looool....

Sa solution est peut etre meilleure....c'est toi qui voit.
Commenter la réponse de obcstaff
flopad 531 Messages postés mercredi 28 septembre 2005Date d'inscription 6 mars 2009 Dernière intervention - 7 févr. 2006 à 12:02
0
Merci
Merci beaucoup pour votre rapidité!!

Par contre voici mon code, ça ne fonctionne pas, ma liste déroulante est vide....??

<?php


$base="D:\\Qualite\test\References.mdb";
$References="References";


//connection au serveur:
$cnx = odbc_connect( "DSN_References","" ,"") or die ("Impossible de se connecter à la base de donnée") ;


$res = odbc_exec( $cnx, "SELECT Agence_filiale from $References order by Agence_filiale" );


echo "<select name='res'>";


while($row=odbc_fetch_row( $res ))
{
echo "<option value=' ".$row['Agence_filiale']." '>";
echo $row['Agence_filiale'];
echo "</option>";
}
echo "</select>";


?>
Commenter la réponse de flopad
sidf 1218 Messages postés mardi 20 décembre 2005Date d'inscription 18 octobre 2012 Dernière intervention - 7 févr. 2006 à 12:07
0
Merci
while($row=odbc_fetch_row( $res ))

essaie
while($row=odbc_fetch_array( $res ))
Commenter la réponse de sidf
obcstaff 147 Messages postés mardi 15 novembre 2005Date d'inscription 28 janvier 2008 Dernière intervention - 7 févr. 2006 à 12:08
0
Merci
il te faut la mettre dans un orm oci, c normal....



<rmm method="post" action="page.php">

ta requete et tes select....avec un bouton submit a la fin



</form>
Commenter la réponse de obcstaff
sidf 1218 Messages postés mardi 20 décembre 2005Date d'inscription 18 octobre 2012 Dernière intervention - 7 févr. 2006 à 12:09
0
Merci
yes il manque
<form>
</form>

of course
Commenter la réponse de sidf
malalam 10918 Messages postés lundi 24 février 2003Date d'inscription 2 mars 2010 Dernière intervention - 7 févr. 2006 à 13:35
0
Merci
Hello,

garde odbc_fetch_row et utilise $row[0] au lieu de $row['Agence_filiale']. C'est toujours plus rapide, et comme tu as un seul champ à aller chercher, tu ne vas pas t'embrouiller avec les clefs numériques ;-)
Commenter la réponse de malalam
flopad 531 Messages postés mercredi 28 septembre 2005Date d'inscription 6 mars 2009 Dernière intervention - 7 févr. 2006 à 14:16
0
Merci
Ma liste est toujours vide....

CODE :

<form method="post" action="rech.php">

</form>


<?php
$base="D:\\Qualite\test\References.mdb";
$References="References";
//connection au serveur:
$cnx = odbc_connect( "DSN_References","" ,"") or die ("Impossible de se connecter à la base de donnée") ;


$res = odbc_exec( $cnx, "SELECT Agence_filiale from $References order by Agence_filiale" );


echo "<select name='res'>";


while($row=odbc_fetch_row( $res ))
{
echo "<option value=' ".$row[0]." '>";
echo $row[0];
echo "</option>";
}
echo "</select>";
?>
Commenter la réponse de flopad
obcstaff 147 Messages postés mardi 15 novembre 2005Date d'inscription 28 janvier 2008 Dernière intervention - 7 févr. 2006 à 14:24
0
Merci
<form method="post" action="rech.php">


<?php
$base="D:\\Qualite\test\References.mdb";
$References="References";
//connection au serveur:
$cnx = odbc_connect( "DSN_References","" ,"") or die ("Impossible de se connecter à la base de donnée") ;


$res = odbc_exec( $cnx, "SELECT Agence_filiale from $References order by Agence_filiale" );



echo "<select name='res'>";



while($row=odbc_fetch_row( $res ))
{
echo "<option value=' ".$row[0]." '>";
echo $row[0];
echo "</option>";
}
echo "</select>";



?>

</form>



C'est normal faut que tes select soient entre les balises de ton formulaire....
Commenter la réponse de obcstaff
malalam 10918 Messages postés lundi 24 février 2003Date d'inscription 2 mars 2010 Dernière intervention - 7 févr. 2006 à 14:30
0
Merci
Au passage, tu es sûr que odbc s'utilise comme ça? J'ai vu bcp de odbc_result () moi (jamais utilisé les fonctions odbc de php).
Commenter la réponse de malalam
flopad 531 Messages postés mercredi 28 septembre 2005Date d'inscription 6 mars 2009 Dernière intervention - 7 févr. 2006 à 15:37
0
Merci
Ca me met une erreur si je laisse le et </form>....?????
Commenter la réponse de flopad
obcstaff 147 Messages postés mardi 15 novembre 2005Date d'inscription 28 janvier 2008 Dernière intervention - 7 févr. 2006 à 16:04
0
Merci
Essaye avec un echo de ton bouton:



echo" " ;



Sinon, tu dois avoir une erreur d'execution de requete pour que ca n'affiche pas ta liste, refere toi au manuel odbc...
Commenter la réponse de obcstaff
sidf 1218 Messages postés mardi 20 décembre 2005Date d'inscription 18 octobre 2012 Dernière intervention - 7 févr. 2006 à 16:17
0
Merci
moi je ferais un echo de $res ici pour voir ce qu'il ya a dedans

while($row=odbc_fetch_row( $res ))
{
echo $res;
Commenter la réponse de sidf
sidf 1218 Messages postés mardi 20 décembre 2005Date d'inscription 18 octobre 2012 Dernière intervention - 7 févr. 2006 à 16:32
0
Merci
...
$req = "SELECT nom_client FROM clients";
$res=mysql_query($req);

echo "<select name='res'>";


while($row=mysql_fetch_row($res))
{
echo "<option value=' ".$row[0]." '>";
echo $row[0];
echo "</option>";
}
echo "</select>";
echo "";
echo "</form>";
...

ça marche tres bien pour moi (sans parler de odbc)
Commenter la réponse de sidf
flopad 531 Messages postés mercredi 28 septembre 2005Date d'inscription 6 mars 2009 Dernière intervention - 7 févr. 2006 à 17:48
0
Merci
Même en faisant ça, ma liste est vide...Que faire???

<form method="post" action="rech.php">


<?php
$base="D:\\Qualite\test\References.mdb";
$References="References";
//connection au serveur:
$cnx = odbc_connect( "DSN_References","" ,"") or die ("Impossible de se connecter à la base de donnée") ;


$res = odbc_exec( $cnx, "SELECT * from $References" );


echo "<select name='res'>";


while($row=odbc_fetch_row( $res ))
{
echo "$res";
echo "<option value=' ".$row[0]." '>";
echo $row[0];
echo "</option>";
}
echo "</select>";



?>



</form>
Commenter la réponse de flopad
malalam 10918 Messages postés lundi 24 février 2003Date d'inscription 2 mars 2010 Dernière intervention - 7 févr. 2006 à 18:07
0
Merci
regarde du côté de odbc_result ()...
Commenter la réponse de malalam
sidf 1218 Messages postés mardi 20 décembre 2005Date d'inscription 18 octobre 2012 Dernière intervention - 7 févr. 2006 à 19:39
0
Merci
dis donc, ta table a le même nom que ta base de données ??

pourquoi pas...
Commenter la réponse de sidf
sidf 1218 Messages postés mardi 20 décembre 2005Date d'inscription 18 octobre 2012 Dernière intervention - 7 févr. 2006 à 19:41
0
Merci
et pourquoi tu passes la table par une variable dans ta requete ?

indispensable ?
Commenter la réponse de sidf

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.