Poniżej znajduje się skrypt php, który powinieneś być w stanie zapisać gdzieś jako plik (powiedzmy, że nazywasz go „getdata.php”) dostępnym z twojego pliku HTML z zawartym w nim kodem D3. Po wywołaniu zwróci dane z bazy danych MySQL w formacie json (o ile serwer bazy danych nie znajduje się poza Twoją domeną);
<?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);
?>
Oczywiście będziesz musiał wprowadzić odpowiednie dane dotyczące nazwy użytkownika, hasła, hosta i bazy danych. Musisz również zawrzeć odpowiednie zapytanie dla swoich danych, aby zwróciło to, czego szukasz. Coś w stylu (i to tylko przypuszczenie);
SELECT `dateTimeTaken`, `reading` FROM `tablename`
Który zwróci listę znaczników czasu i wartości z tabeli o nazwie tablename
z kolumnami o nazwie dateTimeTaken
i reading
. Następnie, gdy przejdziesz do czytania w swoim pliku json, użyjesz następującej składni dla kodu, w którym będziesz czytać w swoim json;
d3.json("getdata.php", function(error, data) {
Mam nadzieję, że to blisko tego, czego szukasz. Przetestowałem to lokalnie i wydaje się, że wszystko działa.
Przygotowałem post, aby omówić lokalną instalację prostego serwera WAMP i skonfigurować zapytanie do bazy danych MySQL z d3.js tutaj http://www.d3noob.org/2013/02/using-mysql-database-as-source-of- data.html
Jest to prawie taka sama sytuacja, jak Uzyskiwanie dostępu Baza danych MySQL w wizualizacji d3