tutorials.de Buch-Aktion 05/2012
Like Tree2Danke
  • 1 Beitrag von GeneSys386
  • 1 Beitrag von Papier
ERLEDIGT
NEIN
ANTWORTEN
3
ZUGRIFFE
825
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    qsrs qsrs ist offline Mitglied Brokat
    Registriert seit
    Jan 2005
    Beiträge
    454
    Hallo,

    ich habe einen Dateimanager geschrieben. In einer Datenbank werden in einer Tabelle alle Dateiinformationen gespeichert. Bei jeder Datei wird auch die ID der Gruppe und des Users gespeichert, welche diese hochgeladen hat. Nun möchte ich eine Statistik anbieten, die mir die top 10 Gruppen und die top 10 User mit den meisten Uploads anzeigt. Wie müsste ich das umsetzen? Das war die erste Frage.

    Die zweite Frage ist, ich möchte das Volumen der Gruppe berechnen, die am meisten Uploads hat. Gibt es eine MySQL-Abfrage, die mir all Datensätze holt, die eine id, also einen Wert, am häufigsten beeinhaltet?

    Und nun die dritte Frage. Ich habe eine weitere Tabelle, in welcher der Traffic gespeichert wird. Für jede Datei wird gespeichert, an welchem Tag, welchem Monat, und in welchem Jahr die Datei hochgeladen wurde. Nun möchte ich eine graphische Übersicht über das Jahr, an welchem Monat am meisten hochgeladen wurde und an welchem Tag. Wie könnte ich hier ansetzen?

    Ich würde mich über Anregungen und Tipps sehr freuen.
     

  2. #2
    GeneSys386 GeneSys386 ist offline Mitglied Silber
    Registriert seit
    Aug 2007
    Ort
    Salzburg, Österreich
    Beiträge
    50
    Hallo!

    Also wie du zu den Top10 Usern/Gruppen kommst, kannst du wie folgt ansetzen.
    Du holst dir alle groupid's/userid's in ein Array .. z.B. mit der Query

    Code :
    1
    2
    
    SELECT groupid FROM table_groups;
    SELECT userid FROM table_users;

    mit dem Array, schaust du nun nach, welcher Benutzer wiviele Files hat ...

    PHP-Code:
    foreach($groupids as $akt_groupid)
    {
        
    $row $db->query("SELECT COUNT(downloadid) as anz_downloads FROM `table_downloads` WHERE `groupid`=$akt_groupid");
        echo 
    "Grupppe $akt_groupid besitzt $row[anz_downloads]";

    gleiches gilt auf für die User.


    Deiner zweiten Frage kann ich leider nicht ganz folgen .. kannst du das evtl. noch etwas konkretisieren?


    Zur Statistik:
    Die graphische Komponente realisierst du am besten mit der GdLib -- such z.B. nach Tutorials der GdLib -- sie ist nicht all zu kompliziert zu verwenden, du kommst sicher schnell drauf wie du linien/balken charts programmieren kannst.

    Schöne Grüße!
    qsrs bedankt sich. 
    "Nichts tun macht nur dann Spass, wenn man eigentlich viel zu tun hätte."

  3. #3
    Papier Papier ist offline Mitglied Bronze
    Registriert seit
    Jul 2003
    Beiträge
    43
    Die erste Anfrage kannst du dir auch komplett von der Datenbank berechnen lassen:

    Code sql:
    1
    2
    3
    4
    5
    
    SELECT user_id, COUNT(file_id) AS 'anzahl', SUM(file_size) AS 'summe'
    FROM uploads
    GROUP BY user_id
    ORDER BY COUNT(filesize) DESC
    LIMIT 10
    qsrs bedankt sich. 

  4. #4
    qsrs qsrs ist offline Mitglied Brokat
    Registriert seit
    Jan 2005
    Beiträge
    454
    Danke an euch beide für die Antworten. Ich habe die erste und zweite Frage bereits selbst mit einer DB-Abfrage umsetzen können, und für die dritte habe ich auch schon eine Idee.

    Bei der dritten werde ich das aktuelle Jahr in der Tabelle abfragen und die einzelnen Monate entsprechend nach Dateimengen sortieren. Die Ergebnisse muss ich dann noch grafisch darstellen. Ich werde mir dazu die GdLib einmal ansehen.
     

Ähnliche Themen

  1. statistische Sonderzeichen
    Von kather im Forum Office-Anwendungen
    Antworten: 8
    Letzter Beitrag: 10.11.08, 10:48
  2. Antworten: 2
    Letzter Beitrag: 27.08.08, 19:08
  3. Excel und statistische Abweichungen
    Von SilencerandLois im Forum Office-Anwendungen
    Antworten: 9
    Letzter Beitrag: 10.04.08, 12:49
  4. Antworten: 0
    Letzter Beitrag: 23.07.05, 21:50