|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre actif
![]() Mélanie Inscription : novembre 2008 Messages : 275 ![]() |
Bonjour à tous,
Je souhaite réaliser un tableau de statistiques comme suit : ______colonne1 | colonne 2 | colonne 3 ligne1 resultat1 | resultat4 | resultat7 ligne2 resultat2 | resultat5 | resultat8 ligne3 resultat3 | resultat6 | resultat9 Le nombre de colonne et le nombre de ligne sont dynamique, mais j'arrive à afficher mon tableau selon les données que j'ai dans ma base de données, grâce à mysql_num_rows, j'ai donc bien le nombre de ligne et le nombre de colonne, ce que je souhaite faire c'est de remplir mon tableau selon une requête SQL. Voici mon code : Code :
Il ne me met pas les résultats dans les tableaux et ne sont pas bien positionnés, mais quand j'enlève mon while et que je met des valeurs en "durs" cela fonctionne. Comment construire proprement mon tableau dynamique avec un while ? Merci de vos réponses. |
||
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() ![]() |
Bonjour,
Quelle forme a ton tableau $stat ? Et comment fais-tu pour savoir que dans ton exemple resultat5 doit être dans la 2ème colonne de la 2ème ligne.
__________________
# Dans la Création, tout est permis mais tout n'est pas utile... |
|
00
|
|
|
#3 |
|
Membre actif
![]() Mélanie Inscription : novembre 2008 Messages : 275 ![]() |
Mon $stat est en faite un entier qui me donne le nombre total de professionnel de santé selon un pays
Code :
comment fais-tu pour savoir que dans ton exemple resultat5 doit être dans la 2ème colonne de la 2ème ligne. et que ma table est construite comme ceci : num_profession | num_pays | tot_stat 1 1 2000 2 1 2500 3 1 300 ... .... Je vais vous donner un exemple concret : ______ France | Espagne | Allemagne Medecin 2000 | 1500 | 400 Infirmier 2500 | 1280 | 600 Sage femme 3000 | 1600 | 555 J'ai en tout pour le moment 18 lignes, et 8 colonnes, mais bien évidemment cela peux ce modifier par la suite... J'ai donc fait le mysql_num_rows. Suis-je assez claire ou pas du tout ? |
|
|
00
|
|
|
#4 |
|
Expert Confirmé
![]() ![]() |
Est ce que tu as un index unique dans ta table sur la paire (num_profession/num_pays) ?
__________________
# Dans la Création, tout est permis mais tout n'est pas utile... |
|
00
|
|
|
#5 |
|
Membre actif
![]() Mélanie Inscription : novembre 2008 Messages : 275 ![]() |
Non, j'ai un index unique sur un champs que je n'ai pas mis la car c'est un auto increment.
|
|
|
00
|
|
|
#6 |
|
Expert Confirmé
![]() ![]() |
Postes ta requête SQL
__________________
# Dans la Création, tout est permis mais tout n'est pas utile... |
|
00
|
|
|
#7 | ||||
|
Membre actif
![]() Mélanie Inscription : novembre 2008 Messages : 275 ![]() |
Alors la je sens que je vais me faire fusiller, actuellement ma requête c'est ca :
Code :
Alors en faite le truc c'est qu'au début ma requête sql ressemblait à ca : Code :
Une solution ? |
||||
|
|
00
|
|
|
#8 | |||
|
Expert Confirmé
![]() ![]() |
Citation:
__________________
# Dans la Création, tout est permis mais tout n'est pas utile... |
|||
|
00
|
|
|
#9 |
|
Membre actif
![]() Mélanie Inscription : novembre 2008 Messages : 275 ![]() |
J'utilisais cette requête uniquement la mise en page de mon tableau...
PS : sérieux le père noël existe pas ? |
|
|
00
|
|
|
#10 | ||
|
Expert Confirmé
![]() ![]() |
Bon, je t'ai adapté un de mes scripts générant des tableaux croisés de ce genre quand les lignes et colonnes sont dynamiques.
J'ai essayé de commenter au mieux et j'espère que tu suiveras bien la logique, en s'y prenant pas à pas c'est tout à fait jouable. On est loin de ton code et de ta malheureuse requête SQL Code :
__________________
# Dans la Création, tout est permis mais tout n'est pas utile... |
||
|
00
|
|
|
#11 |
|
Membre actif
![]() Mélanie Inscription : novembre 2008 Messages : 275 ![]() |
Merci beaucoup, je vais regarder ca de très près, et je reviens vers vous pour des explications... j'en ai une
par contre je ne connais vraiment pas bien les requête avec les inner join, pouvez m'expliquer brièvement le fonctionnement ? Ce sont des "jointures amélioriées" ? car je viens de lancer la requête dans mon MySql et c'est exactement ca !! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com