Следва php скрипт, който трябва да можете да запишете някъде като файл (да речем, че го наричате 'getdata.php'), достъпен от вашия HTML файл с вашия D3 код в него. Когато бъде извикан, той ще върне данни от вашата MySQL база данни във формат json (докато сървърът на базата данни не е извън вашия домейн);
<?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);
?>
Очевидно ще трябва да въведете подходящи подробности за потребителско име, парола, хост и база данни. Вие също ще трябва да включите подходяща заявка за вашите данни, така че тя да върне това, което търсите. Нещо от типа на (и това е само предположение);
SELECT `dateTimeTaken`, `reading` FROM `tablename`
Което ще върне списък с времеви печати и стойности от таблица, наречена tablename
с колони, наречени dateTimeTaken
и reading
.След това, когато отидете да четете във вашия json файл, ще използвате следния синтаксис за кода, където ще четете във вашия json;
d3.json("getdata.php", function(error, data) {
Надяваме се, че това е близо до това, което търсите. Тествах го локално и изглежда, че всичко работи...
Съставих публикация, за да разгледам локалната инсталация на обикновен WAMP сървър и да настроя заявка към базата данни MySQL от d3.js тук http://www.d3noob.org/2013/02/using-mysql-database-as-source-of- data.html
Това е почти същата ситуация като Достъп MySQL база данни в d3 визуализация