Somme d'une colonne

sanhoua Messages postés 11 Date d'inscription jeudi 3 décembre 2009 Statut Membre Dernière intervention 26 janvier 2012 - 29 déc. 2009 à 17:58
syndrael Messages postés 2378 Date d'inscription lundi 4 février 2002 Statut Membre Dernière intervention 29 décembre 2012 - 30 déc. 2009 à 13:10
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

neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
30 déc. 2009 à 03:20
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à ;)
0
sanhoua Messages postés 11 Date d'inscription jeudi 3 décembre 2009 Statut Membre Dernière intervention 26 janvier 2012
30 déc. 2009 à 10:47
j'ai trouvé merci à vous. voila la réponse
$sum=current(mysql_fetch_array(mysql_query("SELECT SUM(poids) FROM $tbl_name")));
0
syndrael Messages postés 2378 Date d'inscription lundi 4 février 2002 Statut Membre Dernière intervention 29 décembre 2012 20
30 déc. 2009 à 13:10
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.
0
Rejoignez-nous