• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

pChart mySQl Tabelle verbinden und zählen

Fabiii321

Mitglied
Hallo zuammen,

ich habe vor auf Basis einer MySQL-Tabelle einen Graphen zu erstellen.
Genauer gesagt, soll es ein Kreisdiagramm werden.

Ich nutze dei Klasse pChart.

momentaner Code:
PHP:
<?php
/*
     Example10 : A 3D exploded pie graph
*/

// Standard inclusions 
include("pChart/pData.class");
include("pChart/pChart.class");
include 'includes/connect.php';

// Dataset definition
$DataSet->AddPoint(array(Zahl1, Zahl2,Zahl3),"Serie1");
$Requete1 = "COUNT";
  $result1  = mysql_query($Requete1,$db);
  while ($row1 = mysql_fetch_array($result1))
{ $DataSet->AddPoint($row1["username"],"Serie2"); } }
$DataSet->AddAllSeries();
$DataSet->SetAbsciseLabelSerie("Serie2");

// Initialise the graph
$Test = new pChart(420,250);
$Test->drawFilledRoundedRectangle(7,7,413,243,5,240,240,240);
$Test->drawRoundedRectangle(5,5,415,245,5,230,230,230);
$Test->createColorGradientPalette(195,204,56,223,110,41,5);

// Draw the pie chart
$Test->setFontProperties("Fonts/tahoma.ttf",8);
$Test->AntialiasQuality = 0;
$Test->drawPieGraph($DataSet->GetData(),$DataSet->GetDataDescription(),180,130,110,PIE_PERCENTAGE_LABEL,FALSE,50,20,5);
$Test->drawPieLegend(330,15,$DataSet->GetData(),$DataSet->GetDataDescription(),250,250,250);

// Write the title
$Test->setFontProperties("Fonts/MankSans.ttf",10);
$Test->drawTitle(10,20,"Chef sein",100,100,100);

$Test->Render("example10.png");
?>

Der erste Teil des Diagramms funktioniert schon: Die 3 verschiedenen Namen werden ausgeben.

Jetzt muss ich nur noch hinbekommen, dass die Zahlen sich auch auf die Datenbank beziehen.
Und zwar soll die Zahl fr jeden Benutzer so ermittel werden:
in Worten: Zähle, wie oft der jeweilige Username in der Spalte Name in der Tabelle Veranstaltungen vorkommt
in SQL:
Code:
SELECT COUNT(Name)  FROM Veranstaltungen
WHERE username=//???jeweilige Benutzername;

Wie löse ich diese Problem??

Vielen Dank für eure Hilfe und entschuldigt die so komplizierte und kaotische Erklärung! :D
Gruß
Fabian
 
Also irgendwas sagt mir schon das ich finde das du eine falsche Datenbankstruktur hast. Da ich nicht genau weiß was dies nun für Veranstaltungen sind und so.

Für mich hört sich das hier
Zähle, wie oft der jeweilige Username in der Spalte Name in der Tabelle Veranstaltungen vorkommt
in SQL:

so an als ob in der Spalte Name ein Text drin steht und du innerhalb dieses Textes wissen willst wie oft der Benutzername drin vor kommt. Aber das ist schwer vorstellbar :D

Was willst du denn mit dem Diagramm genau darstellen? Wenn du zum Beispiel wissen willst auf wie vielen Veranstaltungen ein User war/ist. Dann finde ich deine Datenbanksturktur schon falsch.
 
So hallo,

neine so ist es nicht.
Vielleicht habe ich mich etwas unklar ausgedrückt.
Pro Datensatz steht in der Spalte Name nur ein Wort.
Dieses Wort ist der Username.
Die Spalte Name hat den Sinn, dass da drin steht wer bei dieser Veranstaltung der Verantwortliche war.
Jede Zeile/Datensatz, ist in der Datenbank eine Veranstaltung.

D.h ich möchte eine Statistik machen, welcher User wie oft bei einer Veranstaltung ein Verantwortlicher war.
Konnte man es jetzt verstehen.

Vielen Dank
Gruß
Fabi
 
Hi, sry das ich mich erst so spät melde, wochenende war viel zu tun :D

Du solltest dir zwei Sachen denn anschauen, als erstes mysqli, da mysl veraltet ist und hoffentlich endlich in der nächsten PHP version verschwindet :D
Und dann solltest du dir das hier anschauen ( http://php.net/manual/de/mysqli-result.num-rows.php )
Damit bekommst du die Anzahl der Ergebnisse zurück. Du musst aus deinem SQL Statement nur das count(name) in Name ändern.
 
Zurück
Oben