Trier une liste déroulante selon une table adjacente
Résolu/Fermé
DGDB
Messages postés
6
Date d'inscription
jeudi 10 janvier 2013
Statut
Membre
Dernière intervention
1 février 2013
-
Modifié par DGDB le 10/01/2013 à 15:33
DGDB Messages postés 6 Date d'inscription jeudi 10 janvier 2013 Statut Membre Dernière intervention 1 février 2013 - 11 janv. 2013 à 10:41
DGDB Messages postés 6 Date d'inscription jeudi 10 janvier 2013 Statut Membre Dernière intervention 1 février 2013 - 11 janv. 2013 à 10:41
A voir également:
- Trier une liste déroulante selon une table adjacente
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Table ascii - Guide
- Table des matières word - Guide
- Excel trier par ordre croissant chiffre - Guide
4 réponses
Nhay
Messages postés
838
Date d'inscription
vendredi 2 novembre 2012
Statut
Membre
Dernière intervention
17 décembre 2015
126
10 janv. 2013 à 15:40
10 janv. 2013 à 15:40
Moi je le ferait comme ça :
$format = '<option value="'.$row[0].'"'; if($row[0]==$CHOIX_UTILISATEUR)$format.=" selected='selected' "; $format .='>'.$row[0].'</option>'; echo $format;
DGDB
Messages postés
6
Date d'inscription
jeudi 10 janvier 2013
Statut
Membre
Dernière intervention
1 février 2013
10 janv. 2013 à 16:00
10 janv. 2013 à 16:00
Salut Nhay,
je fini mon codage en cours,
teste ta proposition et reposte les résultats obtenus !
Merci
je fini mon codage en cours,
teste ta proposition et reposte les résultats obtenus !
Merci
DGDB
Messages postés
6
Date d'inscription
jeudi 10 janvier 2013
Statut
Membre
Dernière intervention
1 février 2013
10 janv. 2013 à 19:27
10 janv. 2013 à 19:27
Re Nhay,
Super, un grand merci,
Ton code fonctionne nickel.
Utile pour la communauté, le voici en entier
(Il y a bien évidemment et certainement un code plus efficace que celui-ci.)
Objets :
Un menu déroulant dynamique, prenant en compte un choix antérieur.
Données :
Une BDD.
Deux tables en cause : doss_clt et segmentation
Actions : (par exemple dans la page profil)
Un client effectue dans une liste déroulante, un choix enregistré dans la table doss_clt.
Ultérieurement, il revient sur son profil pour apporter quelques modifs.
Objectif :
La liste de choix doit afficher son choix antérieur.
Code php
<?php
session_start();
# remonte le choix de l\'utilisateur
$Nclt = $_SESSION['idClient'];
$chx_Seg = mysql_query ("SELECT * FROM doss_clt WHERE idClient='$Nclt'");
if (mysql_num_rows($chx_Seg)){
$verif_seg = mysql_fetch_object ($chx_Seg);
$CHOIX_UTILISATEUR = $verif_seg->seg;
}
# remonte la liste segmentation en affichant le choix utilisateur
$result = mysql_query (" SELECT segment FROM segmentation ");
# boucle while construisant la liste
while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
$format = ' <option value="'.$row[0].'"';
if($row[0] == $CHOIX_UTILISATEUR) $format.=" selected='selected' ";
$format .='>'.$row[0].'</option>';
echo $format;
}
?>
Super, un grand merci,
Ton code fonctionne nickel.
Utile pour la communauté, le voici en entier
(Il y a bien évidemment et certainement un code plus efficace que celui-ci.)
Objets :
Un menu déroulant dynamique, prenant en compte un choix antérieur.
Données :
Une BDD.
Deux tables en cause : doss_clt et segmentation
Actions : (par exemple dans la page profil)
Un client effectue dans une liste déroulante, un choix enregistré dans la table doss_clt.
Ultérieurement, il revient sur son profil pour apporter quelques modifs.
Objectif :
La liste de choix doit afficher son choix antérieur.
Code php
<?php
session_start();
# remonte le choix de l\'utilisateur
$Nclt = $_SESSION['idClient'];
$chx_Seg = mysql_query ("SELECT * FROM doss_clt WHERE idClient='$Nclt'");
if (mysql_num_rows($chx_Seg)){
$verif_seg = mysql_fetch_object ($chx_Seg);
$CHOIX_UTILISATEUR = $verif_seg->seg;
}
# remonte la liste segmentation en affichant le choix utilisateur
$result = mysql_query (" SELECT segment FROM segmentation ");
# boucle while construisant la liste
while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
$format = ' <option value="'.$row[0].'"';
if($row[0] == $CHOIX_UTILISATEUR) $format.=" selected='selected' ";
$format .='>'.$row[0].'</option>';
echo $format;
}
?>
DGDB
Messages postés
6
Date d'inscription
jeudi 10 janvier 2013
Statut
Membre
Dernière intervention
1 février 2013
11 janv. 2013 à 10:41
11 janv. 2013 à 10:41
Un oubli important :
Ce bout de code constitue un fichier php (menuDeroul.inc), appelé par une instruction <select> require() </select> dans votre fichier html ou php appelant :
<select name="seg" style="font-size: 12px; background-color: #FAFAFA;">
'; require('menuDeroul.inc'); echo'
</select>
Ce bout de code constitue un fichier php (menuDeroul.inc), appelé par une instruction <select> require() </select> dans votre fichier html ou php appelant :
<select name="seg" style="font-size: 12px; background-color: #FAFAFA;">
'; require('menuDeroul.inc'); echo'
</select>