Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Zugriff auf die MySQL-Datenbank in der d3-Visualisierung

Das Folgende ist ein PHP-Skript, das Sie irgendwo als Datei speichern können sollten (sagen wir, Sie nennen es "getdata.php"), auf das Sie von Ihrer HTML-Datei mit Ihrem D3-Code aus zugreifen können. Wenn es aufgerufen wird, gibt es Daten aus Ihrer MySQL-Datenbank im json-Format zurück (solange sich der Datenbankserver nicht außerhalb Ihrer Domäne befindet);

<?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 ( ! $myquery ) {
        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);
?>

Offensichtlich müssten Sie die entsprechenden Details für Benutzername, Passwort, Host und Datenbank eingeben. Sie müssten auch eine entsprechende Abfrage für Ihre Daten einfügen, damit sie Daten für „dateTimeTaken“ und „reading“ zurückgibt. Etwas in der Art von (and das ist nur eine Vermutung);

SELECT `dateTimeTaken`, `reading` FROM `tablename`

Wenn Sie dann Ihre JSON-Datei einlesen, würden Sie die folgende Syntax für den Code verwenden, in dem Sie Ihre JSON einlesen würden;

d3.json("getdata.php", function(error, data) {

Hoffentlich ist das nah an dem, wonach Sie suchen. Ich habe es lokal getestet und es scheint alles zu funktionieren..

Ich habe einen Beitrag zusammengestellt, um die lokale Installation eines einfachen WAMP-Servers und das Einrichten einer Abfrage in der MySQL-Datenbank von d3.js hier http://www.d3noob.org/2013/02/using-mysql-database-as-source-of- data.html