Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    258

    Errore Somma campi mysql

    Salve, ho problema con un query, in pratica devo sommare dei campi del db, per farlo l'utente deve scegliere un mese da elenco. Ecco il codice che utilizzo:

    Codice PHP:
    ...
    $ute    =  trim($_POST['utente_id']);$mese trim($_POST['mese']);;$anno "2014";

    /* Query somma dati tabella */
    $sql "SELECT sum(campo1), sum(campo2), sum(campo3), sum(campo4) FROM tabella WHERE  MONTH (data) = $mese and year(data) = $anno and id_utente = '$ute'";
    $res mysql_query($sql);$row mysql_fetch_row($res);

    $return = array(    'campo1'    => $row[7],     'campo2'    => $row[8],     'campo3'    => $row[9],     'campo4'    => $row[10]    );
    echo 
    json_encode($return);
    ?> 
    Le date sono salvate nel campo "data" in questo formato 2014-08-31. La cosa strana e se invece di fare la somma estraggo tutto con * funziona correttamente, ma in questo modo se in un mese ho più dati mi prende solo un valore, mentre a me mi occorre fare la somma di tutto.

    i valori restituiti sono null.

    Dove sbaglio?

  2. #2
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    hai provato a raggruppare nella select?

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    258
    Quote Originariamente inviata da clasku Visualizza il messaggio
    hai provato a raggruppare nella select?
    Ciao, puoi farmi un esempio non ho capito?

  4. #4
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    "SELECT id_utente, sum(campo1), sum(campo2), sum(campo3), sum(campo4) FROM tabella WHERE MONTH (data) = $mese and year(data) = $anno and id_utente = '$ute' GROUP BY id_utente"

    Questo dovrebbe raggruppare i dati per id_utente e sommarli

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    258
    Quote Originariamente inviata da clasku Visualizza il messaggio
    "SELECT id_utente, sum(campo1), sum(campo2), sum(campo3), sum(campo4) FROM tabella WHERE MONTH (data) = $mese and year(data) = $anno and id_utente = '$ute' GROUP BY id_utente"

    Questo dovrebbe raggruppare i dati per id_utente e sommarli
    Risolto, facevo un errore banale, in pratica avevo lasciato i riferimenti del vecchio script dovo venivano estratti tutti i dati, quindi gli indici dei campi non erano piu gli stessi, ('campo4' => $row[10] quando invece e 'campo4' => $row[3] )

    Grazie per l'aiuto

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.