Est-ce que ton champ multiligne est vraiment nécessaire?
Si je comprends bien tu as dans la TABLE1 un champ qui est en fait une clé d'une TABLE2 ?
Bref dans TABLE1 ta clé est une sorte d'abréviation, c'est ça? Et la TABLE2 dont tu parles en disant "un nom provenant d'une autre table" c'est la table qui contient la description de ta clé (abréviation) ?
Si tu veux le faire en SQL et que ton DISTINCT est vraiment nécessaire, moi je ferai simplement un INNER JOIN du style :
SELECT maRequete.Zonana1, maTable2.Description FROM (SELECT DISTINCT Zonana1 FROM data_ant WHERE Zonana1 != '' ORDER BY Zonana1 ASC)maRequete INNER JOIN maTable2 ON maRequete.Zonana1 = maTable2.Zonana1
Bien sûr maTable2 et Description sont à changer par les noms que tu utilises.
Ensuite tu n'auras qu'à récupérer $ligne_liste["Description"], et tu éviterais ainsi une complication avec un champ du style multiligne.
Ou bien est-ce que le multiligne est NÉCESSAIRE?
Si c'est le cas, tu veux surement avoir une combo qui contrôle le multiligne, mais ça c'est une autre histoire... au pire fait une page avec deux étapes : première étape tu sélectionnes le COMBO, deuxième étape tu réaffiches la page avec le champ multiligne rempli.
Si tu veux faire tout ça mais sans deux étapes, il faut aller voir côté Ajax ou bien stockage des données dans une variable Javascript, mais cette dernière possibilité n'est pas très performante surtout si tu as beaucoup de colonnes clés (des centaines).
En espérant t'avoir aidé
A+
Partager