Tableau

[Résolu]
Signaler
Messages postés
6
Date d'inscription
vendredi 11 mars 2005
Statut
Membre
Dernière intervention
12 janvier 2006
-
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
-
Bonjour a tous

Voila je fais 3 requetes sur 3 tables differentes mais de meme structure , je m explique j ai

1 table doc (num_doc, sujet_doc etc....)

1 table inf (num_inf, sujet_inf etc....) et la meme chose pour une table note

J execute la meme requete sur les 3 tables du genre:

$sql_doc=mysql_query("select num_doc from doc where sujet_doc='1' etc.....)

$sql_note=mysql_query("select num_note from note where sujet_note='1' etc.....)

et pareil pour la 3 eme requete



Pour diverse raisons je additionner ces 3 resultats dans un tableau
pour bosser dessus seulement je ny arrive pas , j ai essayer avec
array_merge mais il m indexe mes cles primaires comme des champs.

J ai d autres solutions pour m en sortir(creer une table
temporaire par exemple) mais j aimerais bien comprendre comment faire
pour "fusionner" ces resultats merci d avance de l interet porté a ma
question.

9 réponses

Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
25
Bon... tu peux initialiser un tableau vide AVANT tes requêtes.
$tab = array ();
Ensuite à chaque requête, tu comptes le nombre d'entrées de ton tableau , puis tu stockes tes données :
while ($res ) mysql_fetch_assoc ($requete)) {
$clef = count ($tab);
$tab[$clef]['num'] = $res['num_code'];
$tab[$clef]['sujet'] $res['sujet_code'];
}

etc...
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
25
Hello,

tu le veux sous quelle forme, ton tableau...?
Et tu les stockes sous quelle forme (quelle structure de tableau), les résultats de chacune de tes 3 requêtes ?
Messages postés
6
Date d'inscription
vendredi 11 mars 2005
Statut
Membre
Dernière intervention
12 janvier 2006

En fait ce que je veux au final c est de ressortir les resultats triés par date de" post "

J essaye juste de reunir le resultat de ces 3 requetes dans un tableau
afin de les trier et de les ressorteur dans l ordre que je veux.

Je veux pouvoir ajouter mes 3 resultats de requetes dans un seul
tableau, le trier, et ensuite juste afficher celles wui m interesse
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
25
Donne la structure du tableau que tu veux au final.
genre
array (
'num' => array (),
'sujet' => array ()
...
)
ou je ne sais pas quoi.
Messages postés
6
Date d'inscription
vendredi 11 mars 2005
Statut
Membre
Dernière intervention
12 janvier 2006

je veux kelke chose de ce style:

array([num]=>1[sujet]=>test de la doc[descritpif]=>aucun)



et ce pour chaque enregistrement , je ne sais pas si je suis tres clair
, je suis desolé j ai pas trop l habitude de poster sur forum
Messages postés
6
Date d'inscription
vendredi 11 mars 2005
Statut
Membre
Dernière intervention
12 janvier 2006

Ok merci c est la solution que j utilise actuellement ca m oblige a
passer en revue 2 fois tous mes enregistrements , je voulais essayer de
tout faire avec un seul while(pour toutes mes requetes) mais a priori c
est pas possible


merci qd même.
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
25
Heu si, mais tu disais que tu faisais 3 requêtes, pas que tu voulais n'en faire qu'une,n lol...le '1' que tu donnes en exemple, cette valeur est commune à tes 3 tables ?
Je veux dire, ce que tu veux c'est :SELECT num_code, num_info, num_machin FROM code, info, machin WHERE sujet_code sujet_info AND sujet_info sujet_machin AND sujet_code = 1
?
Messages postés
6
Date d'inscription
vendredi 11 mars 2005
Statut
Membre
Dernière intervention
12 janvier 2006

oui c est mon champ primaire en gros.

Si tu veux je veux afficher sur ma page d accueil des news classer par
date , il y a 3 types de news , de la doc , des informations et des
notes de service.Mes trois tables ont la meme structure a savoir

num_info(cles primaire) ,sujet_info , descript_info ,date_info

num_doc(cles primaire) ,sujet_doc descript_info ,date_doc

et la meme chose pour note de service.

Ce que je veux c est effectivement soit trouver le moyen de faire une
seul requete qui me permet au final de trier par date et d
afficher toutes les news que ce soit des doc ou info , ou alors de
reunir les resultats de mes requetes dans un seul tableau et ensuite de
l afficher.

Pour l instant ma solution est a peu pres celle que tu m as proposé c
est a dire que j enregistre chaque ligne de mes resultat dans un
tableau temporaire et je les tris ensuite ce qui m oblige a afire
autant de while que de requetes ce qui est extremement long.
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
25
Ben c'est la requête que je te propose. Adapte là.
Si ils ont des clefs communes, suffit qu'elles soient égales, etr tu peux lister la toitalité (sans mettre le 1 si tu veux vraiment tout), sans doublon.