Grafiek genereren aan de hand van gegevens uit database

Status
Niet open voor verdere reacties.

Trojaan

Gebruiker
Lid geworden
20 apr 2007
Berichten
6
Hallo daar,

Ik probeer door middel van een standaard script een grafiek te genereren van gegevens uit mijn database.

De input zou je in dit stukje moeten invullen:

PHP:
<?
require('chart.php');

$data = array(41,43,46,52,59,63,65,66,65,64,62,60,57,56,53,50,48);
$chart = new chart(300, 200, "example1");
$chart->plot($data);
$chart->stroke();
?>

De array wil ik nu vullen met gegevens uit mijn database. Ik dacht dit op de volgende manier te kunnen doen:

PHP:
<?

include('../connect.php');

$query_5 = mysql_query("SELECT ratio1 FROM pot WHERE deelnemer1_id = '2'");

while ($record = mysql_fetch_object($query_5)) {
   
    $data[] = $record->ratio1;
   
}


require('chart.php');

$chart = new chart(500, 200);
$chart->plot($data);
$chart->set_title("Gemiddelde ratio");
$chart->set_labels("dag", "ratio");
$chart->set_margins(50,10,20,35);
$chart->stroke();

?>
Het plaatje wordt op deze manier alleen niet geladen. Met <img src="grafiek.php"> geef ik aan waar de gegevens vandaan moeten worden gehaald (in grafiek.php staat dus ook het bovenstaand script).

Het script doet het steeds tot dat ik gegevens uit de database ga halen en in een variabele zet, ook al gebruik ik deze niet eens. Weet iemand wat ik moet doen om dit script werkend te krijgen?
 
Laatst bewerkt:
Geen idee, ik denk dat niemand weet hoe die grafiek gemaakt wordt aangezien je nergens een link naar het script hebt neergezet...

Het enige dat ik zie is dat je klasse in het 2e script anders aanroept dan in het eerste...

Hou het eens simpel en wijzig het voorbeeld zodat de array met waardes nu daarin wordt weergegeven.
 
Het komt denk ik niet door de manier waarop ik de klasse aanvraag, want zolang ik de array handmatig invul (er dus gewoon zelf wat cijfertjes in zet) werkt het onderste script prima.

Maar als ik de array wil vullen met gegevens uit de database gaat het mis, dan wil het plaatje opeens niet meer laden.
 
Echo de array dan eens nadat je die hebt gevuld.
PHP:
foreach($data AS $value)
{
  echo $value .' | ';
}
 
Ik ben er inmiddels zelf achter gekomen. Er zat in het bestand connect.php een spatie na het afsluiten van php. Hierdoor kreeg ik een 'http headers already send' error.

Dit is nu opgelost, toch erg bedankt voor de reacties! :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan