Requete PHP SQL, probleme
cap
Messages postés
57
Statut
Membre
-
cap Messages postés 57 Statut Membre -
cap Messages postés 57 Statut Membre -
Salut,
petite kestion sur une réquete PHP...je me retrouve avec une requete PHP a modifier car elle contient un erreur!
cette requete recupere des données se trouvant dans une bdd MySQL
et fait la somme de chaque donnée(ce sont que des entiers)
probleme c qu'elle doit faire la moyenne pour la 1ere donnée et ensuite la somme pour les autres :
Le code :
<?
/***********
//je passe la partie on on se connecte a la bdd
************/
/*****************************
Tableau qui recapitule tte les donnée
a recup pour faire la sommes
******************************/
$fields=array("entite1","entite2","entite2","entite4","entite5");
/***
Préparation de la requête qui calcule les sommes pour ttes les entités de la table
***/
$SQL="SELECT ";
foreach($fields as $field)//on parcourt chak entité 1 a 1
$SQL.="SUM($field) AS $field, "; //on fait la somme
/****
Le dernier champ reçoit un traitement différent, car il ne faut mettre de virgule avec le WHERE de la requête
****/
$field="entite5";
$SQL.="SUM($field) AS $field ";
/***
//On remet "entite5" avec les autres champs.
***/
array_push($fields,$field);
$SQL.=" FROM table ";
?>
Probleme on devrais aussi recuperer la 1ere entité pour faire 1 Moyenne avec (fonction AVG (de MySQL) et continuer a faire la somme avec le reste mais j'y arrive pas a trouver la syntaxte exact j'ai tjrs une erreur
qq'1 saurais comment faire??
Cap
petite kestion sur une réquete PHP...je me retrouve avec une requete PHP a modifier car elle contient un erreur!
cette requete recupere des données se trouvant dans une bdd MySQL
et fait la somme de chaque donnée(ce sont que des entiers)
probleme c qu'elle doit faire la moyenne pour la 1ere donnée et ensuite la somme pour les autres :
Le code :
<?
/***********
//je passe la partie on on se connecte a la bdd
************/
/*****************************
Tableau qui recapitule tte les donnée
a recup pour faire la sommes
******************************/
$fields=array("entite1","entite2","entite2","entite4","entite5");
/***
Préparation de la requête qui calcule les sommes pour ttes les entités de la table
***/
$SQL="SELECT ";
foreach($fields as $field)//on parcourt chak entité 1 a 1
$SQL.="SUM($field) AS $field, "; //on fait la somme
/****
Le dernier champ reçoit un traitement différent, car il ne faut mettre de virgule avec le WHERE de la requête
****/
$field="entite5";
$SQL.="SUM($field) AS $field ";
/***
//On remet "entite5" avec les autres champs.
***/
array_push($fields,$field);
$SQL.=" FROM table ";
?>
Probleme on devrais aussi recuperer la 1ere entité pour faire 1 Moyenne avec (fonction AVG (de MySQL) et continuer a faire la somme avec le reste mais j'y arrive pas a trouver la syntaxte exact j'ai tjrs une erreur
qq'1 saurais comment faire??
Cap
2 réponses
-
Salut !
Je ne peux pas beaucoup t'aider mais j'ai juste remarqué que tu avais mis
$fields=array("entite1","entite2","entite2","entite4","entite5");
tu as 2 fois entite2, je ne sais pas si c'est normal ;o)
Voilà !
Désolée de ne pas pouvoir t'aider... -
non, c juste moi ki ne sais pas compter,
j'ai réecris la requete pour qu'elle soit plus compréhensible!!
après 2 c 3!! ( je confirme lol)
merci qd meme cécilia :)