- Home
- Categorie
- Coding e Sistemistica
- PHP
- Sommare diversi campi
-
Sommare diversi campi
Salve a tutti sono nuovo del forum e conosco pochissimo sql.
Un mio amico mi ha chiesto di potergli modificare uno script che ha lui per fare delle somme, prima i dati erano solo visualizzati.
Volevo chiedere se qualcuno poteva darci una mano.
Grazie in anticipo
-
Ciao ltatas e benvenuto nel forumGT.
Veniamo al tuo problema..
io ti consigliere di provare a impostare un prima soluzione del problema, poi se è particolarmente complicata la spezziamo in sottoproblemi eventualmente si possono aprire diversi topic per ogni sottoproblema e vediamo di giungere alla soluzione.
Ad esempio,
dove sono i campi da sommare?
dove bisogna salvare la somma?Lo script non è particolarmente complicato, però bisogna prima capire bene cosa fargli fare.
-
Adesso non mi funziona più nemmeno in visualizzazione.
Posto il codice:// Query utilizzate
$select = "SELECT * from $tablename where (data >= '$inizio_intervallo') and (data <= '$fine_intervallo') and (codice = '$codice') order by data asc, codice";
$select_all = "SELECT * from $tablename where (data >= '$inizio_intervallo') and (data <= '$fine_intervallo') order by data asc, codice";// connessione al db
$link = mysql_connect ($host, $user, $password);if ($codice == "tutti") { //Select ALL $risultato_query = mysql_db_query ($dbname, $select_all, $link); { print(" <tr> <td><div align=\"center\">$riga[data]</div></td> <td><div align=\"center\">$riga[codice]</div></td> <td><div align=\"center\">$riga[A]</div></td> <td><div align=\"center\">$riga**</div></td> <td><div align=\"center\">$riga</div></td> <td><div align=\"center\">$riga[D]</div></td> </tr>"); } print(" <tr> <td colspan=\"5\"><hr></td> </tr>"); print(" <tr> <td> </td> <td> </td> <td><div align=\"right\">Totale A: $A</div></td> <td><div align=\"right\">Totale B: $B</div></td> <td><div align=\"right\">Totale C: $C</div></td> <td><div align=\"right\">Totale D: $D</div></td> </tr>"); } else { // SELECT mysql_db_query ($dbname, $select, $link); $risultato_query = mysql_db_query ($dbname, $select, $link); while ($riga = mysql_fetch_array($risultato_query)) { print(" <tr> <td><div align=\"center\">$riga[data]</div></td> <td><div align=\"center\">$riga[codice]</div></td> <td><div align=\"center\">$riga[A]</div></td> <td><div align=\"center\">$riga**</div></td> <td><div align=\"center\">$riga</div></td> <td><div align=\"center\">$riga[D]</div></td> </tr>"); } print(" <tr> <td colspan=\"5\"><hr></td> </tr>"); print(" <tr> <td> </td> <td> </td> <td><div align=\"right\">Totale A: $A</div></td> <td><div align=\"right\">Totale B: $B</div></td> <td><div align=\"right\">Totale C: $C</div></td> <td><div align=\"right\">Totale D: $D</div></td> </tr>"); }
mysql_close ($link);
All'inizio viene fatta una SELECT per poter fare selezionare il tempo e poi vengono (venivano) visualizzati tutti i record nelle colonne rispettive A-B-C-D in fondo a tutto vorrei fare il totale delle rispettive colonne, per il tempo selezionato.
Grazie
-
Ho trovato l'errore per la visualizzazione.
Posto il codice:// Query utilizzate
$select = "SELECT * from $tablename where (data >= '$inizio_intervallo') and (data <= '$fine_intervallo') and (codice = '$codice') order by data asc, codice";
$select_all = "SELECT * from $tablename where (data >= '$inizio_intervallo') and (data <= '$fine_intervallo') order by data asc, codice";// connessione al db
$link = mysql_connect ($host, $user, $password);if ($codice == "tutti") { //Select ALL $risultato_query = mysql_db_query ($dbname, $select_all, $link); while ($riga = mysql_fetch_array($risultato_query)) { print(" <tr> <td><div align=\"center\">$riga[data]</div></td> <td><div align=\"center\">$riga[codice]</div></td> <td><div align=\"center\">$riga[A]</div></td> <td><div align=\"center\">$riga**</div></td> <td><div align=\"center\">$riga</div></td> <td><div align=\"center\">$riga[D]</div></td> </tr>"); } print(" <tr> <td colspan=\"5\"><hr></td> </tr>"); print(" <tr> <td> </td> <td> </td> <td><div align=\"right\">Totale A: $A</div></td> <td><div align=\"right\">Totale B: $B</div></td> <td><div align=\"right\">Totale C: $C</div></td> <td><div align=\"right\">Totale D: $D</div></td> </tr>"); } else { // SELECT mysql_db_query ($dbname, $select, $link); $risultato_query = mysql_db_query ($dbname, $select, $link); while ($riga = mysql_fetch_array($risultato_query)) { print(" <tr> <td><div align=\"center\">$riga[data]</div></td> <td><div align=\"center\">$riga[codice]</div></td> <td><div align=\"center\">$riga[A]</div></td> <td><div align=\"center\">$riga**</div></td> <td><div align=\"center\">$riga</div></td> <td><div align=\"center\">$riga[D]</div></td> </tr>"); } print(" <tr> <td colspan=\"5\"><hr></td> </tr>"); print(" <tr> <td> </td> <td> </td> <td><div align=\"right\">Totale A: $A</div></td> <td><div align=\"right\">Totale B: $B</div></td> <td><div align=\"right\">Totale C: $C</div></td> <td><div align=\"right\">Totale D: $D</div></td> </tr>"); }
mysql_close ($link);
All'inizio viene fatta una SELECT per poter fare selezionare il tempo e poi vengono (venivano) visualizzati tutti i record nelle colonne rispettive A-B-C-D in fondo a tutto vorrei fare il totale delle rispettive colonne, per il tempo selezionato.
Grazie
-
Ciao itatas, ti chiederei di racchiudere il codice php tra i tag
[ php ]..[ /php ]
senza gli spazi nelle parentesi..
per rendere più comprensibile il codice.Dò un occhiata...