- Home
- Categorie
- Coding e Sistemistica
- PHP
- Problema con array_sum
-
Problema con array_sum
Salve a tutti, avrei un problemino con la somma di alcuni valori che io recupero tramite array. Questo è il codice:
$query = mysql_query("SELECT * FROM estratto WHERE id=".$id.""); $result = mysql_num_rows ($query); if ($result == 0) { echo "nessun estratto"; } else { $somma = array(); for($y=0; $y<$result; $y++) { $rs = mysql_fetch_row($query); $somma[] = $rs[3]; echo array_sum($somma); ```Il problema sta nel fatto che io vorrei mi stampasse un unico numero che somma tutti i valori che estrae. Invece, nel caso ad esempio di un array che viene popolato da 3 valori, echo mi stampa il valore1, poi un secondo numero dato da valore1+valore2 e poi un terzo numero formato da valore1+valore2+valore3. Qualcuno mi sa dire dove sbaglio??? Grazie a tutti.....
-
Perchè usare un array quando lo puoi fare usando la clausola SUM nella query?
$query = mysql_query("SELECT SUM(nomecampo) FROM estratto WHERE id=".$id."");
-
Guarda in effetti non ho mai dovuto dare tanta ragione a qualcuno in vita mia.....come hai potuto intuire sono un principiante...:)
Una domanda: siccome oltre a dover fare la somma di tutti i valori che estraggo devo anche visualizzarli uno per uno devo fare la query così$query = mysql_query("SELECT SUM(nomecampo),nomecampo FROM estratto WHERE id=".$id."");
oppure posso estrarre ogni singolo valore anche se utilizzo SUM.
Grazie per la tua gentilezza
-
Questa query estrae tutti i valori però sommandoli .... così come l'hai scritta non ho mai provato ma credo non funzioni.
-
Infatti non funziona. Come posso fare allora per estrarre sia la somma che i singoli valori? devo fare due query separate?
Grazie...
-
La cosa che mi viene subito in mente è questa ma ..... se ci penso bene è possibile contare i record per poi estrarre i dati sommandoli creando un array in base alla conta precedentemente fatta.
$QUERY1 = "SELECT COUNT(id) FROM ......";
$QUERY2 = "SELECT campo FROM ......"; seguito da un ciclo while o for per l'estrazione dei dati.