Simplifier plusieurs requetes

Eléphanteau du PHP | 37 Messages

13 janv. 2008, 01:00

Bonsoir,
Voilà j'ai écrit un code pour récupérer plusieurs données dans une table. Celui fonctionne bien mais j'aimerai juste un avis sur ce code. Est-il possible de simplifier celui-ci ?Peut on faire une seule requete ?
Par avance merci à tous ceux qui apporteront une aide. et bonne année 2008.

$counter=mysql_query("SELECT COUNT(*) FROM $table2");
$counter2=mysql_query("SELECT COUNT(*) FROM $table2 WHERE membreSexe='M'");
$counter3=mysql_query("SELECT COUNT(*) FROM $table2 WHERE membreSexe='F'");

$row=mysql_fetch_row($counter); 
$row2=mysql_fetch_row($counter2); 
$row3=mysql_fetch_row($counter2); 

 if(!$counter)
   {
   return "error=" . mysql_error();
   } else {
$pop=$row[0];
$boy=$row2[0];
$girl=$row3[0];
if(!$girl){
$girl="0";
}

$xml = '<response>'; 
$xml .= '<status>ok</status><population>'.$pop.'</population><boy>'.$boy.'</boy><girl>'.$girl.'</girl>'; 
} 
$xml .= '</response>'; 
print "$xml"; 

ViPHP
ViPHP | 5924 Messages

13 janv. 2008, 01:43

En une requète :

Code : Tout sélectionner

SELECT COUNT(*) FROM $table2 GROUP BY membreSexe ORDER BY membreSexe ASC;
Tu auras le compte pour les femmes dans le premier enregistrement, le compte pour les hommes dans le second, et en ajoutant les 2 le compte total…

Eléphanteau du PHP | 37 Messages

13 janv. 2008, 01:57

Tout d'abord merci pour ton aide.
bon j'ai un peu de mal à comprendre, surtout la partie d'ecriture de mon fichier xml.
A partir de ta proposition, comment faut-il coder la ligne d'écriture du xml ? Peux tu me donner une piste ?

ViPHP
ViPHP | 5924 Messages

13 janv. 2008, 02:46

Exécute la requète pour voir ce qu'elle te rend. Elle te rend exactement les mêmes informations que tes trois autres requètes. Tu verras que la construction du xml est exactement la même qu'actuellement, la récupération des données est juste un tout petit peu différente…