Somme d'une colonne

Signaler
Messages postés
11
Date d'inscription
jeudi 3 décembre 2009
Statut
Membre
Dernière intervention
26 janvier 2012
-
Messages postés
2380
Date d'inscription
lundi 4 février 2002
Statut
Membre
Dernière intervention
29 décembre 2012
-
bonsoir à tous je souhaiterai faire la somme d'une colonne de ma base celle -ci ne comporte que des chiffres et la requete #SELECT SUM POIDS FROM SOMME# depuis phpmyadmin donne le résultat.
pour afficher le resutat sur mon site test voici le code.
#
<?php
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="test"; // Database name
$tbl_name="somme"; // Table name

// Connect to server and select databse.
mysql_pconnect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
$sql="SELECT SUM(poids) FROM $tbl_name";
$req=mysql_query($sql);
$voir=mysql_fetch_array($req);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>


<?php echo $voir; ?>


</html>
#
et la surprise il affiche array je comprend pas. besoin d'aide

3 réponses

Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
17
Salut,

Cela n'a rien de surprenant : la fonction mysql_fetch_array() retourne un tableau (array en anglais). Quand tu affiches un tableau, PHP ne sait pas quoi afficher, il affiche donc 'Array'.
Plus précisément, mysql_fetch_array() retourne les colonnes sélectionnées dans la requête dans un tableau indexé numériquement et associativement. Bon, comme tu n'as pas utilisé d'alias dans ta requête, il n'est pas toujours évident de récupérer la valeur en question, bien que dans ton cas ce soit possible :
$voir['SUM(poids)'];

Sinon, plus simplement:
$voir[0]


Tu sais, sans vouloir être vexant, la lecture de la documentation de PHP peut s'avérer chose intéressante pour développer en PHP... Je peux t'assurer que ce n'est pas une perte de temps.

--
Neige

Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
Messages postés
11
Date d'inscription
jeudi 3 décembre 2009
Statut
Membre
Dernière intervention
26 janvier 2012

j'ai trouvé merci à vous. voila la réponse
$sum=current(mysql_fetch_array(mysql_query("SELECT SUM(poids) FROM $tbl_name")));
Messages postés
2380
Date d'inscription
lundi 4 février 2002
Statut
Membre
Dernière intervention
29 décembre 2012
16
Même si je suis un adepte des commandes de 3000 caractères, la solution de Neige est peut etre un petit peu plus facile pour un débutant..
S.