PHPLOT funzt nicht mit MYSQL Abfrage Hilfe :-(
Patti
- php
Hallo liebes Forum,
sehe im Augendblick leider keinen Lösungsansatz. Ich habe ein Script indem ich eine DB abfrage und die Werte in einem ARRAY sichere. Diese Werte liegen als Zahlen von 0-1000 vor. Nun habe ich vor die Werte grafisch aufzubereiten mit phplot.
Leider funktioniert die Ausgabe als png nur allein. Sobald ich meine MYSQL - Abfrage mit verwende, werden nur Daten, ähnlich als ob ich mir ein Bild mit dem Editor anschaue angezeigt.
Kennt jemand das Problem? Seelbst ein funktionierendes Diagramm mit festen Werten funzt nicht mehr sobald ich die MYSQL abfrage mit reinbringe.
Hier mal der Code wegen PHPlot:
#PHPlot Example: Simple line graph
require_once 'Diagramm/phplot.php';
$data = array(
array('1', (int)$Lufttemperatur[0]), array('2', (int)$Lufttemperatur[1]), array('3', (int)$Lufttemperatur[3]),
array('4', (int)$Lufttemperatur[4]), array('5', (int)$Lufttemperatur[5]), array('6', (int)$Lufttemperatur[6]),
array('7', (int)$Lufttemperatur[7]), array('8', (int)$Lufttemperatur[8]), array('9', (int)$Lufttemperatur[9]),
array('10', (int)$Lufttemperatur[10]), array('11', (int)$Lufttemperatur[11]), array('12', (int)$Lufttemperatur[12]),
array('13', (int)$Lufttemperatur[13]), array('14', (int)$Lufttemperatur[14]), array('15', (int)$Lufttemperatur[15]),
array('16', (int)$Lufttemperatur[16]), array('17', (int)$Lufttemperatur[17]), array('18', (int)$Lufttemperatur[18]),
array('19', (int)$Lufttemperatur[19]), array('20', (int)$Lufttemperatur[20]), array('21', (int)$Lufttemperatur[21]),
array('22', (int)$Lufttemperatur[22]), array('23', (int)$Lufttemperatur[23]), array('24', (int)$Lufttemperatur[24]),
);
$plot =& new PHPlot(640, 420);
$plot->SetImageBorderType('plain');
$plot->SetPlotType('lines');
$plot->SetDataType('text-data');
$plot->SetDataValues($data);
$plot->SetDataColors('blue');
$plot->SetLineWidths(3);
$plot->SetPlotAreaWorld(NULL, 0, NULL, NULL);
$plot->SetYTickIncrement(1);
$plot->SetYLabelType('data');
$plot->SetXTickIncrement(1);
$plot->SetYTickIncrement(1);
$plot->SetTitle('Tagesdurchschnitts Temperatur ');
$plot->SetYTitle('Temperatur in °C');
$plot->SetXTitle('Uhr');
$plot->SetDrawXGrid(True);
$plot->SetDrawYGrid(True); # Is default
$plot->SetXTickLabelPos('none');
$plot->SetXTickPos('none');
$plot->DrawGraph();
Danke Euch.
Hallo liebes Forum,
sehe im Augendblick leider keinen Lösungsansatz. Ich habe ein
Script indem ich eine DB abfrage (...)
soweit so gut
Leider funktioniert die Ausgabe als png nur allein.
Mein Meerschweinchen puffte auch die Trepp.
Sobald ich meine MYSQL - Abfrage mit verwende, werden nur Daten,
ähnlich als ob ich mir ein Bild mit dem Editor anschaue angezeigt.
Und das nicht zu heftig.
Kennt jemand das Problem?
Ja, aber ein guter Tierarzt konnte helfen.
....
Wenn ich jetzt mal meine Glaskugel raushole, sehe ich...
sehe ich... sehe ich ein Skript, das Daten grafisch
ausgibt - aber nur dann, wenn die Daten als Array fest
definiert werden. Wenn du allerdings versuchst, die Daten
mittels einer MySQL-Abfrage zu bekommen, liefert dir dein
Script nicht das gewünschte Ergebnis?
Wenn es so ist, solltest du zwingend auch deine MySQL-Abfrage
posten.
Ich gehe mal davon aus, daß Du dir entweder dein Array falsch
zusammenbaust oder die MySQL-Abfrage schiefgeht.
Gruß,
DL
echo $begrüßung;
Wenn es so ist, solltest du zwingend auch deine MySQL-Abfrage
posten.
Ich gehe mal davon aus, daß Du dir entweder dein Array falsch
zusammenbaust oder die MySQL-Abfrage schiefgeht
Nun ja, zeigen muss er/sie/es uns die Abfrage nicht unbedingt. Vielmehr sehe ich hier ein Defizit in den Debugging-Kenntnissen. Hier ein paar Tipps zur allgemeinen Fehlersuche:
Immer wieder hilfreich beim Entwickeln von PHP-Anwendungen ist, das error_reporting auf E_ALL zu stellen (und display_errors eingeschaltet zu haben). In der Default-Konfiguration werden Notice-Meldungen nicht ausgegeben. Die erscheinen z.B. bei Zugriffen auf nicht vorhandene Variablen. Somit kommt man Tippfehlern in Variablennamen recht gut auf die Spur.
Viele Funktionen liefern im Fehlerfall ein anderes Ergebnis zurück als im Gut-Fall. Die Funktionsergebnisse sollte man diesbezüglich auswerten und nicht einfach unbeachtet im Programm fortfahren. Als Besonderheit bei Datenbankabfragen muss man wissen, dass der Fehlerzustand nur durch ein einfaches False gekennzeichnet wird. Die eigentliche MySQL-Fehlermeldung erhält man dann mit der Funktion mysql_error().
Und dann basieren auch noch jede Menge Fehler auf falschen Annahmen. In den Variablen ist nicht das enthalten, was man sich beim Programmieren gedacht hat, Funktionen und Ausdrücke liefern ein anderes Ergebnis als gewünscht. Kontrollausgaben helfen hier, dem Fehler auf die Spur zu kommen. Das kann man mit einem einfachen echo $variable; (oder den Ausdruck anstelle $variable einfügen) oder mit var_dump($variable); und bei Arrays auch print_r($array); tun lassen. Besonders var_dump() sollte man kennen, denn das zeigt den Inhalt am genauesten an, weil es den aktuellen Typ mit ausgibt.
echo "$verabschiedung $name";