WinFuture-Forum.de: Statistiken - Wie? - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Statistiken - Wie?


#1 Mitglied ist offline   ghosty 

geschrieben 04. September 2013 - 22:18

Hallo Leute, ich habe wiedermal etwas vor bzw. ich will mal schauen, wie man etwas macht. Und zwar will ich Statistiken auf einer Webseite anzeigen lassen. Und wiedermal habe ich hierfür ein Beispiel: http://mcstats.org/plugin/InventorySQL
Ich habe so etwas noch nie gemacht und weiß nicht, wie ich das angehen soll. Und ich will gar nicht mal das Diagramm, sondern lediglich die Buttons (hier wären das Rank, Servers und Players)
Ich würde mich sehr freuen, wenn mir jemand antworten könnte.
Mfg ghosty
0

Anzeige



#2 Mitglied ist offline   RalphS 

  • Gruppe: VIP Mitglieder
  • Beiträge: 8.895
  • Beigetreten: 20. Juli 07
  • Reputation: 1.126
  • Geschlecht:Männlich
  • Wohnort:Zuhause
  • Interessen:Ja

geschrieben 04. September 2013 - 22:47

Mit einer Datenbank. :)

Aber Statistik würde ich das so nicht nennen, so ohne das Diagramm (und nur für die Knöpfe). Da werden ja nur Einträge gezählt.


Ist aber etwas schwierig, Dir da Ratschläge zu geben, ohne zu wissen, was da dahintersteht. Daher nur soviel:

- Du bräuchtest eine Datenbank, mit zumindet einer Tabelle und Daten darin.
- Dann müßtest Du Zeilen zählen anhand bestimmter Kriterien - wie, hängt insbesondere davon ab, wie die Tabellen aussehen; das Einfachste wäre sowas wie
SELECT count(*) FROM servers;

wenn es eine Tabelle namens "servers" gibt, wo die alle aufgelistet sind. "count(*)" liefert hier einfach die ungefilterte Anzahl der Zeilen; wenn also 1 Server pro Zeile eingetragen ist, wäre das die Anzahl der Server.

Wenn die Tabelle natürlich anders aussieht, klappt es so erwartungsgemäß nicht. Daher noch ein anderes Beispiel zur Veranschaulichung:

- Du hast eine Tabelle namens Zugriffsprotokoll.
- Diese sieht so aus: (username, server, logon_time)
- Da drin steht, grob vereinfacht:
UserA	server1	0:01
UserB	server2 8:02
UserC	server1 14:03
UserB	server3 19:04



count(*) funktioniert hier offensichtlich nicht. Egal wie man es dreht, es sind weder vier Benutzer noch vier Server. Daher würde man dann eher sowas wie
SELECT count(DISTINCT username) FROM Zugriffsprotokoll;
verwenden:
- count(username) zählt die Spalte "username"
- Mit DISTINCT wird angegeben, daß jeder Eintrag nur genau einmal gezählt werden soll.
Das Ergebnis der Abfrage wäre dann, wie erwartet, 3.

Dieser Beitrag wurde von RalphS bearbeitet: 04. September 2013 - 23:03

"If you give a man a fish he is hungry again in an hour. If you teach him to catch a fish you do him a good turn."-- Anne Isabella Thackeray Ritchie

Eingefügtes Bild
Eingefügtes Bild
0

#3 Mitglied ist offline   Holger_N 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.111
  • Beigetreten: 11. September 10
  • Reputation: 458
  • Geschlecht:Männlich

geschrieben 05. September 2013 - 08:28

Wobei vielleicht erstmal die Frage ist, wo genau die Problemstellung liegt. Sollen vorhandene Daten statistisch ausgewertet bzw. zumindest mal angezeigt werden oder besteht das Problem schon darin, die Daten erstmal zu erheben bzw. zu ermitteln? Oder gibst für Beides noch gar keine Idee und vielleicht nichtmal Erfahrung mit Datenbanken?

Dieser Beitrag wurde von Holger_N bearbeitet: 05. September 2013 - 08:28

Bauernregel: Regnets mächtig im April, passiert irgendwas, was sich auf April reimt.
0

#4 Mitglied ist offline   ghosty 

geschrieben 05. September 2013 - 14:14

Ich habe bereits einen Kurs über MySQL usw belegt... Jedoch weiß ich zur Zeit garnicht woher ich überhaupt die Informationen kriegen soll. Das ist mir jetzt etwas peinlich, aber es ist so. Ich bin ja noch gut in der Aufbauphase.
0

#5 Mitglied ist offline   RalphS 

  • Gruppe: VIP Mitglieder
  • Beiträge: 8.895
  • Beigetreten: 20. Juli 07
  • Reputation: 1.126
  • Geschlecht:Männlich
  • Wohnort:Zuhause
  • Interessen:Ja

geschrieben 05. September 2013 - 15:23

Dafür geht nun gar keine Pauschalaussage mehr.

Man kann die Daten natürlich händisch in die Datenbank stecken. Aber das ist der bei weitem schlechteste Weg. "Eigentlich" läßt man das automatisch eintragen - zB indem man sie von Benutzern via Formular oder sie automatisch von Quellsystemen eintragen läßt; aber dazu müssen sie natürlich entsprechend übertragen und dann natürlich noch so aufbereitet (und geprüft!) werden, daß sie in die Datenbank gesteckt werden können.

Hier wirst Du auch zum Üben nicht um irgendwas Scriptgesteuertes herumkommen, bspw über eine XAMPP-Plattform, wo dann noch in irgendeiner Form ein Import-Modul dazugepackt werden müßte (welches zB komma- oder tab-getrennte Werte in die SQL-Datenbank einlesen kann). Oder natürlich ein einfaches HTML-Formular, in welches man die Daten eingeben und dann auf Serverseite auswerten, verarbeiten und eintragen kann.

Auch mal in die SQL-Dokumentation schauen unter INSERT.

Dieser Beitrag wurde von RalphS bearbeitet: 05. September 2013 - 15:26

"If you give a man a fish he is hungry again in an hour. If you teach him to catch a fish you do him a good turn."-- Anne Isabella Thackeray Ritchie

Eingefügtes Bild
Eingefügtes Bild
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0