Newsgroup: it.comp.www.php
Titolo: Somme [rif.: Stampare somme di variabili con "echo")

Ci ho lavorato un pò su e ho rielaborato ulteriormente il codice e la
richiesta in attesa che mi arrivi il libro PHP e MySQL.
Da quanto ho capito: 
essendo $cur e $cur2 due query sql 
la sintassi
while ($riga = mysql_fetch_row($cur) AND $riga2 =
mysql_fetch_row($cur2))
mi restituisce 2 array i cui campi sono indicizzati a partire
dall'indice 0.
Percio in 
$cur[0] avrò il valore della prima cella, in $cur[1] avrò il valore
della seconda cella e così via per tutte le righe che compongono la
prima tabella. Naturalmente vale $cur2[0] e seguenti per la seconda
tabella.
Da cui con
echo "<tr>...<th>...<td>..."
stampo i valori di ogni singola $cur[indice] e $cur2[indice] 
Bene, partendo dal presupposto che l'interrogazione del db funziona e
che riesco a costruire correttamente ed automaticamente una tabella che
mi riporta i risultati, come posso impostare in quest'ultima tabella
un'ulteriore campo che di volta in volta mi associa la somma delle celle
corrispondenti di $riga con $riga2?
n.b.:tutti i campi estratti dalle due tabelle sql e riportati nella
pagina html con la tabella riassuntiva sono numerici.
Schemi tabelle MySQL
TabelaA            TabellaB
campo1  campo2     campo1  campo2
valore  valore     valore  valore
valore  valore     valore  valore
...     ...        ...     ...
Schema voluto nella tabella della pagina html di output:
TabellaC
campo1TabellaA  campo1TabellaB  SommaValori
valore          valore          valore
valore          valore          valore
...             ...             ...
Grazie molte e mi scuso se ho fatto perder del tempo a causa del post
non proprio preciso.
ALE
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 con $riga2?
print ('<td>');
print ($riga[0] + $riga2[0]);
print ('</td>');
-- 
I am what I am, I do what I can
L'uomo, conscio di sbagliare, persevera.

 print ('</td>');
scusa ma cosi è sostanzialmente uguale a scrivere dopo il while
$dif1=$riga[0]+$riga2[0]
(e via dicendo)
...
mantenendo poi inalterato il codice
echo"<tr>...<th>...<td>...<td>...
e aggiungendo <td>$dif1
giusto?
Io chiedevo se potevo far si che dopo (o contestualmente) il famoso while,
sia possibile
calcolare un "array somma" dei vari campi $riga[indice] $riga2[indice] in
modo
da poterlo poi richiamare come sopra se pero' dover introdurre tutta
quella fila di dif1, dif2 ecc.
Non so se è una richiesta "strana", comunque l'idea è quella secondo cui,
una volta che ho estratto tutti i record, gli ho assegnato una variabile e
un indice univoco sia "facile" procedere alla somma dei valori.
Ho trovato nel manuale la funzione array_sum ma non riesco ad implementarla
nel mio caso (...forse perchè non è quella di cui ho bisogno ??? :-( )
Faccio presente che le due tabelle contengono gli stessi dati. La somma mi
serve per creare una sorta di storico (Tab1 è la tabella "Master" mentre in
Tab2 annoto le variazioni).
Grazie ancora, ALE
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 valori.
Cosi' facendo pero' carichi in memoria dei valori che puoi
tranquillamente inviare in output e basta. IMHO e' inutile tenere in
memoria due recordset completi solo per fare una sottrazione.


 memoria due recordset completi solo per fare una sottrazione.
Forse la richiesta è proprio "strana" e il problema che mi segnali è prorio
quello che ottengo!?
Continuo a sbatterci sopra...!
Grazie ALE


 $diffs[$i] = $riga[$i] + $riga2[$i];
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 		$diffs[$i] = $riga[$i] + $riga2[$i];
		$i++;


OK. Ho adattato il tutto al resto del codice e alle mie esigenze
d'impaginazione e ora funziona. Bene, per prova, sostituito il segno di
addizione (+) con quello di divisione (/) alla seguente riga:
$diffs[$i] = $riga[$i] + $riga2[$i];
che è diventata:
$diffs[$i] = $riga2[$i] / $riga1[$i];
Risultato:
Warning: Division by zero in ..test.php on line 25 (è la linea sopra scrita)
Anche se poi nella tabella i risultati ci sono, tutti e giusti!
Di fatto era solo una prova per capire se potevo sfruttare il codice in una
pagina analoga per tirar fuori delle percentuali.
Ho provato con google ma mi trova solo pagine in cui c'è lo stesso errore.
Ho visto nel ng che molti utilizzano round per le percentuali ma non mi
cambia nulla.
Ho anche pensato che forse il simbolo di divisione possa essere un carattere
speciale ma ne gli esempi che ho trovato in giro mi sembra che la sintassi
per le divisioni sia analoga alla mia, tipo
$a=$b/$c
Faccio anche presente che nessuno dei valori coinvolti nella divisione è
zero.
Spero in un chiarimento!
Grazie, ALE


[cut]
risolto!
Avevo scritto una "cavolata" altrove!
Mi scuso per il reply precedente!
Buona giornata, ALE.
