Effettuare somme in un array di valori restituiti da una query

Ciao a tutti.

Sto cercando di realizzare una pagina che visualizzi, di un insieme di tanti record, solo 10 record per pagina con possibilità di effettuare la somma di quei dieci valori compresi nella pagina che si sta osservando.

Riguardo la possibilità di stampare , in ipotesi, 10 record per pagina su un totale di 100 record in modo da far uscire dieci pagine ho rimediato.

Quello che non riesco a fare è la somma dei record visualizzati nella pagina che sto osservando.

Se ad es nella seconda pagina vengono visualizzati i numeri 3, 4, 5, 4, 3, 6, 8, 5, 9, 1 (e qui è frutto di una query) dovrei riuscire a fare la somma di questi valori, cioè dovrei far vedere a video il numero 48.

Ho questo codice che mi da i risultati in un array e vengono correttamente stampati a video, non riesco a sommarli con la funzione array_sum(), che posso fare?

// Esecuzione seconda query con LIMIT
$query_limit = mysql_query("SELECT Totale_Contante FROM tb_contante LIMIT $primo, $per_page");
while($results = mysql_fetch_array($query_limit))
{
$Totale_Contante = $results["Totale_Contante"];    
echo $Totale_Contante . "<br>";
echo "<br><br><br><br><br><br>";
$array_appo = array($Totale_Contante);
$array_somma = array_sum($array_appo);
echo $array_somma;
}

Cioè passo i singoli valori di results (la query è solo sul campo Totale_Contante) e li metto in un array e poi li sommo ma non va  :(

Qualcuno sa come si può fare?

Vi ringrazio tanto

Ciao

Stone  :bye:  :)

inviato 7 anni fa
stone
X 0 X

Prima di avviare il ciclo while devi definire una variabile $somma = 0

Poi all'interno del ciclo ti basta aggiungere $Totale_Contante a $somma:

$somma += $Totale_Contante;

Alla fine del ciclo :

echo $somma

 :bye:

risposto 7 anni fa
Gianni Tomasicchio
X 0 X

Gianni , ti ringrazio come sempre.

Funziona perfettamente!

E io che mi stavo impazzendo con array_sum .....    :wallbash:

Grazie!  :)

Ciao

Mario  :bye:

risposto 7 anni fa
stone
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda