Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    conteggi in una tabella

    Salve ho bisogno di un vostro aiuto perche online non sono riuscito a trovare nulla.

    Ho una tabella "files" in questa tabella ci sono inseriti i dati dei files che vengono inviati di tipo video, audio, pdf e power point.

    Ora in uno script devo visualizzare a video quanti file un untente abbia inviato tipo una cosa del genre:
    "Hai inviato un totale di 10 files di cui 3 sono video, 2 sono audio, 4 sono pdf e 1 è power_point".

    Come faccio a contare quanti file un utente abbia inviato e poi separarli per le categorie?
    Devo per forza fare una query per ogni categoria?

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    114
    se ho capito bene, ipotizzando una tabella fatta nel seguente modo
    files(id, id_utente, documento, tipo_documento)

    dovrebbe bastare una query del genere (per esempio se si vogliono di dati dell'utente 1):

    codice:
    SELECT COUNT(id) AS num, tipo_documento FROM files WHERE id_utente = 1 GROUP BY tipo_documento
    sempre sperando di aver capito bene

  3. #3
    Il codice qui sopra serve per dividere in categorie (personalmente avrei scritto COUNT(*) anziché COUNT(id), ma fa lo stesso ), invece per calcolare il totale fai la stessa query ma senza GROUP BY, oppure la somma via PHP

  4. #4
    somma via PHP?
    in che senso?

  5. #5
    Originariamente inviato da battax
    se ho capito bene, ipotizzando una tabella fatta nel seguente modo
    files(id, id_utente, documento, tipo_documento)

    dovrebbe bastare una query del genere (per esempio se si vogliono di dati dell'utente 1):

    codice:
    SELECT COUNT(id) AS num, tipo_documento FROM files WHERE id_utente = 1 GROUP BY tipo_documento
    sempre sperando di aver capito bene
    come faccio poi a stampare a video?

  6. #6
    Originariamente inviato da techno
    come faccio poi a stampare a video?
    Scusa, stai già utilizzando un DB e non sai come recuperare i rirultati di una query?!
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  7. #7
    Codice PHP:
    $query "SELECT COUNT(id) AS num, tipo_documento FROM files WHERE id_utente = 1 GROUP BY tipo_documento";

    $result mysql_query($query);
    $files = array();
    $tot 0;

    while(
    $row mysql_fetch_assoc($result)){
       
    $files[] = $row;
       
    $tot += $row['num'];
    }

    echo 
    "Hai inviato un totale di $tot files di cui ";
    for(
    $i=0$i<count($files); $i++){
       if(
    $i==count($files)-1)
          echo 
    " e ";
       elseif(
    $i>0)
          echo 
    ", "
       
    echo $files[$i]['num'];
       if(
    $files[$i]['num']==1)
          echo 
    " &egrave; ";
       else
          echo 
    " sono ";
       echo 
    $files[$i]['tipo_documento'];
    }
    echo 
    ".
    \n"


  8. #8
    satifal intendevo da group by che non lo mai usato

  9. #9
    Originariamente inviato da techno
    satifal intendevo da group by che non lo mai usato
    Una query è una query indipendentemente da quello che c'è dentro. Cosa c'entra il group by con la visualizzazione dei risultati?!
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  10. #10
    Grazie ragazzi ho risolto prendendo spunto dall'esempio ZioLuffo.

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.