Buongiorno a tutti,
mi servirebbe un aiutino a completare questa pagina. Dopo n ricerche e vari tentativi non andati a buon fine mi rivolgo a voi.
il codice è il seguente :
<?php
$st=mysql_query("SELECT COUNT(ID_CLIENTE) AS totale FROM utenti") or die(mysql_error());
$row=mysql_fetch_assoc($st);
$a= $row['totale'];
for ($i=0; $i<=$a; $i++)
{
$query = "SELECT ID_CLIENTE, SUM(OLIO), SUM(SANSA), SUM(QUANTITA_ORDINE) FROM ordini WHERE ID_CLIENTE='$i'";
$result = mysql_query($query) or die(mysql_error());
// Print out result
while($row = mysql_fetch_array($result)){
echo "
Cliente ". $row['ID_CLIENTE']. " ";
echo "
Totale Olive Consegnate = ". $row['SUM(QUANTITA_ORDINE)'];
echo "
Totale Olio = ". $row['SUM(OLIO)'];
echo "
Totale Sansa = ". $row['SUM(SANSA)'];
echo "
";
}}
?>
Il primo problema è nella stampa dei risultati. Questa avviene correttamente ma in più vengono stampati anche dei valori del tipo:
Cliente
Totale Olive Consegnate =
Totale Olio =
Total Sansa =
Cliente 20
Totale Olive Consegnate = 1634
Totale Olio = 252
Total Sansa = 573
La causa, ovviamente, è la mancanza di alcuni ID cliente che sono stati cancellati (nell'esempio il 19) e dei relativi altri valori.
Inoltre vorrei che utilizzando la funzione JOIN tra le due tabelle utenti e ordini venga visualizzato non l'ID del cliente ma il suo nome e cognome. Ho trovato anche qui tanti esempi on line ma tutti con delle join che non includono nella select la funziona sum. Potete darmi delle dritte anche per questo problema?
Grazie

Rispondi quotando