Het volgende is een php-script dat je ergens moet kunnen opslaan als een bestand (laten we zeggen dat je het 'getdata.php' noemt) dat toegankelijk is vanuit je HTML-bestand met je D3-code erin. Wanneer het wordt aangeroepen, retourneert het gegevens uit uw MySQL-database in een json-indeling (zolang de databaseserver zich niet buiten uw domein bevindt);
<?php
$username = "******";
$password = "******";
$host = "******";
$database="***dbase_name***";
$server = mysql_connect($host, $user, $password);
$connection = mysql_select_db($database, $server);
$myquery = "
query here
";
$query = mysql_query($myquery);
if ( ! $query ) {
echo mysql_error();
die;
}
$data = array();
for ($x = 0; $x < mysql_num_rows($query); $x++) {
$data[] = mysql_fetch_assoc($query);
}
echo json_encode($data);
mysql_close($server);
?>
Uiteraard moet u de juiste gegevens invoeren voor gebruikersnaam, wachtwoord, host en database. U moet ook een geschikte zoekopdracht voor uw gegevens opnemen, zodat deze teruggaven wat u zocht. Iets in de trant van (en dit is slechts een gok);
SELECT `dateTimeTaken`, `reading` FROM `tablename`
Wat een lijst met tijdstempels en waarden zou retourneren uit een tabel met de naam tablename
met kolommen genaamd dateTimeTaken
en reading
.Als u vervolgens uw json-bestand gaat inlezen, gebruikt u de volgende syntaxis voor de code waar u in uw json zou lezen;
d3.json("getdata.php", function(error, data) {
Hopelijk komt dat in de buurt van wat je zoekt. Ik heb het lokaal getest en het lijkt allemaal te werken..
Ik heb een bericht samengesteld om de lokale installatie van een eenvoudige WAMP-server te bespreken en een query op de MySQL-database van d3.js hier in te stellen http://www.d3noob.org/2013/02/using-mysql-database-as-source-of- data.html
Dit is vrijwel dezelfde situatie als Toegang MySQL-database in d3-visualisatie