Afficher le résultat d'un menu déroulant PHP

Fermé
Mikesunshine Messages postés 11 Date d'inscription dimanche 31 mai 2015 Statut Membre Dernière intervention 27 juin 2015 - Modifié par jordane45 le 1/06/2015 à 20:57
tete0148 Messages postés 413 Date d'inscription mercredi 19 décembre 2012 Statut Membre Dernière intervention 15 juin 2017 - 2 juin 2015 à 21:19
Bonjour à tous,

Dans mon fichier PHP j'ai un code me permettant d'afficher un menu déroulant avec des statuts différents. Ces statuts proviennent d'une table de ma BDD. (voir code ci-dessous).

Quand j'affiche mon php et que je sélectionne un statut dans le menu déroulant, je souhaiterais afficher le résultat de ce statut en live. (Résultat se trouvant dans la même table)
Cela avec uniquement du code PHP.
<?php
$db = mysql_connect('IP', 'BDD', 'Motdepasse');
mysql_select_db('BDD',$db);
$req = mysql_query('SELECT * FROM STATUT ORDER BY NOM');
echo '<select name="STATUT">';
while ($data = mysql_fetch_assoc($req)) {
echo '<option value="'.htmlentities($data['NOMSTATUT']).'">'.$data['NOMSATUT'].' </option>';
}
echo '</select>';
mysql_close($db);
echo $data[RESULTAT];
?>



Pouvez vous m'aider ?

Merci d'avance,

Cordialement,

Michaël


EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

Merci d'y penser dans tes prochains messages.
.
A voir également:

3 réponses

tete0148 Messages postés 413 Date d'inscription mercredi 19 décembre 2012 Statut Membre Dernière intervention 15 juin 2017 89
31 mai 2015 à 22:20
Tu peux faire ça en Javascript. Tu détectes lorsque le select change de valeur et la tu affiches les données que tu as chargé avec AJAX ou autre
0
Mikesunshine Messages postés 11 Date d'inscription dimanche 31 mai 2015 Statut Membre Dernière intervention 27 juin 2015
31 mai 2015 à 23:09
Tu sais comment je peux faire ?
Merci pour ton aide.
0
Mikesunshine Messages postés 11 Date d'inscription dimanche 31 mai 2015 Statut Membre Dernière intervention 27 juin 2015
Modifié par jordane45 le 1/06/2015 à 20:56
J'ai ajouté ce code PHP à la suite du premier code ci-dessus, mais cela m'affiche tous les résultats. Alors que je souhaiterais que cela affiche uniquement le résultat de ce que j'ai choisi dans la liste.

Quelqu'un pourrait m'aider ?

Merci,

<?php
$conn = mysql_connect('IP', 'BDD', 'Motdepasse');
if (!$conn) {
echo "Impossible de se connecter à la base de données : " . mysql_error();
exit;
}
if (!mysql_select_db("BDD")) {
echo "Impossible de sélectionner la base BDD : " . mysql_error();
exit;
}
$sql = 'SELECT * FROM STATUT';
$result = mysql_query($sql);
if (!$result) {
echo "Impossible d'exécuter la requête ($sql) dans la base : " . mysql_error();
exit;
}
if (mysql_num_rows($result) == 0) {
echo "Aucune ligne trouvée, rien à afficher.";
exit;
}
while ($data = mysql_fetch_assoc($result)) {
echo $data['NOMSATUT'];
}
mysql_free_result($result);
?>


EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

Merci d'y penser dans tes prochains messages.
.
0
tete0148 Messages postés 413 Date d'inscription mercredi 19 décembre 2012 Statut Membre Dernière intervention 15 juin 2017 89
1 juin 2015 à 18:47
C'est normal si tu fais sélectionnes tout depuis la table statut... Il faut dire à mysql de rechercher que pour l'élément sélectionner avec un where
0
Mikesunshine Messages postés 11 Date d'inscription dimanche 31 mai 2015 Statut Membre Dernière intervention 27 juin 2015
Modifié par jordane45 le 1/06/2015 à 20:56
Je dois mettre quoi ?
$sql = 'SELECT * FROM  STATUT WHERE NOMSTATUT = "???"';

Quand j'utilise $data['NOMSTATUT'] cela ne fonctionne pas.

Merci pour ton aide,

Michael

EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

Merci d'y penser dans tes prochains messages.
.
0
tete0148 Messages postés 413 Date d'inscription mercredi 19 décembre 2012 Statut Membre Dernière intervention 15 juin 2017 89
2 juin 2015 à 21:19
ça dépend quelle est la valeur de $data['NOMSTATUT']
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
1 juin 2015 à 21:00
Bonjour,
Pour récupérer la valeur selectionnée dans ta liste... il faut soit utiliser du JAVASCRIPT .. soit placer ta liste dans un FORM .... et faire un SUBMIT !

Hors.. je ne vois ni l'un ni l'autre dans ton code actuel....

PS : Pour détecter le changement en "live" d'une liste déroulante... il faut utiliser l'attribut ONCHANGE ... (et donc... du javascript avec ! )

A la limite, tu pourrais très bien t'orienter vers l'AJAX.
(en cherchant un minimum sur le net tu trouveras un très grand nombre d'exemples et d'explications disponibles sans trop de souci..)


0