Calcul de colonne

Eléphanteau du PHP | 22 Messages

15 juin 2005, 22:10

Je ne savais aps trop ou poster ceci, mais il me semble que çq doit venir ici.

J'ai dans ma table SQl une colonne qui contien des taille en Mo, je souhaiterais les additionner et pour ça j'ai procédé de la façon suivante.
$retour2 = "SELECT taille, SUM(taille) FROM upload GROUP BY taille";
$taille = mysql_query ($retour2) or die(mysql_error());
$tailletotal = mysql_fetch_array ($taille);
Taille étant la colonne et Upload ma table.
Je désire les aficher ensutie ailleur et je met ceci:
<?php echo $tailletotal['taille']; ?>
le truc c'est que j'ai un truc qui s'affiche mais qui est de 38, qui n'a aucun rapport avec mon nombre total de Mo, ni avec mon nombre d'entrées de table (nombre ed ligne) alros ai je fais une boulette, oui je le pense mais ou ?

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

15 juin 2005, 22:19

$retour2 = "SELECT sum(taille) FROM upload";
Cela suffit amplement. ;)

Eléphant du PHP | 199 Messages

15 juin 2005, 22:21

<?php echo $tailletotal['2']; ?>
Quand tu as des COUNT, SUM, AVG ... tu dois donner le numéro de la colonne :wink:
Les 2 font la paire : coder ET commenter :wink:

Eléphant du PHP | 199 Messages

15 juin 2005, 22:23

C'est un peu à coté de la plaque ce que je viens de dire mais si tu as a cause d'un GROUP BY plusieurs lignes tu devras utiliser cette méthode :wink:
Les 2 font la paire : coder ET commenter :wink:

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

15 juin 2005, 22:23

La réponse complète :
$retour2 = "SELECT sum(taille) FROM upload";
$taille = mysql_query($retour2) or die(mysql_error());
$tailletotal = mysql_result($taille,0);
echo $tailletotal;

Eléphanteau du PHP | 22 Messages

15 juin 2005, 22:23

ok je vous remercie beaucoup
je vais tester ç adesuite

Eléphanteau du PHP | 22 Messages

15 juin 2005, 22:29

C'est parfait ça marche, le truc c'est que je n'ai aps trop compris le $taille,0

c'est le 0 que je ne calcul pas trop, que viens il faire ?

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

15 juin 2005, 22:38

C'est juste un paramètre. ;)

Eléphanteau du PHP | 22 Messages

15 juin 2005, 22:49

Arf... mainetnant ce pose un autre souci, ce qeu je comtpe faire c'est calculer le tmeps au Mo, donc ça c'est bon, j'obtien un resultat, j'ai ensuite passer ce résultat en Minutes mais le prob c'est que j'ai en tout 12 chifrees, 6 devant la virgule et 6 derrière, comment enlever ceux de derrière ?

Mammouth du PHP | 19672 Messages

15 juin 2005, 22:52

Explore la fonction number_format()
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphanteau du PHP | 22 Messages

15 juin 2005, 22:53

Merci c'est parfait ça fonctionen a merveil.

Mammouth du PHP | 19672 Messages

15 juin 2005, 22:59

Commence alors par isoler les décimales : Tu pourrais faire quelque chose du style :
$decimales = ceil($nombre) - $nombre;
pour transformer ensuite les décimales en minute :
$minutes = $decimales/100*60
Enfin tu concatènes:
$temps = $ceil(nombre).":".$minutes;
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe: