Comment concaténer deux enregistrements en un seul svp ?

Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics

sanddy
Nouveau WRInaute
 
Messages: 15
Inscription: Ven Mar 17, 2006 19:41

Comment concaténer deux enregistrements en un seul svp ?

Message le Jeu Juil 05, 2007 14:49

Bonjour,
J'ai une table de membres avec certains qui ont le même numéro de téléphone.
J'aimerais pouvoir ne former plus qu'un enregistrement, c'est-à dire que le champ "nom" aura pour valeur le "nom du membre" & "le nom de l'autre membre" avec le même numéro et dans le même enregistrement.
Comment faire svp ?

sanddy
Nouveau WRInaute
 
Messages: 15
Inscription: Ven Mar 17, 2006 19:41

Réexplication

Message le Lun Juil 09, 2007 7:38

Bonjour,

Je vous explique mon problème, j'ai une table membres (je la simplifie pour que vous compreniez mieux)
avec un numero et un nom.

Voici ma table :

CREATE TABLE membres (
numero int(11) NOT NULL,
nom varchar(50) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

#
# Contenu de la table `membres`
#

INSERT INTO membres VALUES (1, 'martin');
INSERT INTO membres VALUES (2, 'maurice');
INSERT INTO membres VALUES (3, 'dupond');
INSERT INTO membres VALUES (1, 'dupont');
INSERT INTO membres VALUES (2, 'marcellin');
INSERT INTO membres VALUES (2, 'maret');
INSERT INTO membres VALUES (4, 'popeye');


Je souhaiterais pouvoir faire un affichage de ces enregistrements mais que lorsque le même numéro
revient, les noms puissent se concaténer.
Exemple ici :
1 donnerait martin & dupont
2 donnerait maurice, marcellin & maret
3 donnerait M. dupond
4 donnerait M. popeye

Comment faire ?

J'arrive à faire afficher les numéros et noms, voici le fichier :

<?PHP

echo "<center><h1>Test</h1></center>";

$serveur="localhost";
$utilisateur="root";
$motdepasse="";
$database="mabase";
@mysql_connect($serveur,$utilisateur,$motdepasse) or die("<CENTER><A style='color:white;background-color:red'> Désolé, problème de serveur </BODY></HTML>");

$TableRep=mysql($database,"SELECT * FROM membres ORDER BY numero") or die("<br><CENTER><A style='color:white;background-color:red'> Désolé, la table est inaccessible </BODY></HTML>");
$NombreEntrees=mysql_num_rows($TableRep);
?>
<br><table width="93%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td height="210">
<p align="justify"><font color="#000000"><b><font face="Verdana, Arial" size="2">Bienvenue sur le site<br><br>
</font></b>
</p></td></tr></table><br>


<?

$i=0; /* initialisation de la variable de boucle */

while ($i < $NombreEntrees) /* faire tant que la fin de la table n'est pas atteinte */
{

$numero = mysql_result($TableRep, $i, "numero");
$nom =mysql_result($TableRep, $i, "nom");


echo "<table><tr>";
echo "<font size=\"1\">";
echo "<td align=\"center\">";
echo "\"$numero\",";
echo "</td>";
echo "<td>";
echo "\"$nom\",";
echo "</td>";
echo "</font>";


echo "</tr></table>";
$i++;
}


echo "</body></html>";
?>










Maintenant, comment faire pour vouloir faire afficher ce que je veux ???

Actuellement, il y a :

"1", "martin",
"1", "dupont",
"2", "maurice",
"2", "marcellin",
"2", "maret",
"3", "dupont",
"4", "popeye",

Et je voudrais :

"1", "martin & dupont",
"2", "maurice, marcellin & maret",
"3", "M. dupont",
"4", "M. popeye",

Je ne vois pas où et comment faire pour afficher le "&" avec le dernier membre du même numéro.
Et s'ils sont plusieurs, mettre des virgules comme au numéro 3.
Et si le membre est le seul à avoir ce numéro, j'aimerais afficher "M. " devant.

SVP, j'ai vraiment besoin d'une aide. Merci d'avance.

Cordialement,

Sandy

sleidia
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 146
Inscription: Sam Juil 08, 2006 11:01

Message le Lun Juil 09, 2007 10:02

www.developpez.net est un forum plus utile pour ton problème.

sanddy
Nouveau WRInaute
 
Messages: 15
Inscription: Ven Mar 17, 2006 19:41

Message le Lun Juil 09, 2007 10:24

Ok merci


Formation recommandée sur ce thème :

Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par Julien Coquet, expert certifié officiellement par Google Analytics.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités