sql >> Databáze >  >> RDS >> Mysql

Jak načíst data z databáze MySQL v JavaScriptu pro vytvoření grafu?

Poté, co provedete výběr ve vaší databázi, musíte vrátit odpověď ve formátu json (pro mě jsem právě vytvořil pole s hodnotou k testování):

Váš soubor php (já jsem serv.php):

$data = array([1, 19], [2, 11], [3, 14], [4, 16]);
// replace $data by your code to select in DB
echo json_encode($data);

Nyní musíte získat odpověď v kódu javascriptu. Chcete-li to provést, musíte provést požadavek „GET“ v javascriptu nebo jQuery (v mém případě jQuery):

Toto je váš soubor js:

$.ajax({
   url : 'serv.php', // your php file
   type : 'GET', // type of the HTTP request
   success : function(data){
      var obj = jQuery.parseJSON(data);
      console.log(obj);
   }
});

A v obj máte svá data :

Nyní tedy máte svá data a k přístupu je pole, takže:

 - obj[0] contains [1, 19], obj[0][0] contains 1 and obj[0][1] contains 19
 - obj[1] contains [2, 11], obj[1][0] contains 2 and obj[1][1] contains 11 ...

Ve vašem případě variable1 je stejný jako obj

Upravit S vaší DB:

Před odesláním odpovědi musíte správně sestavit svá data. Takže ve vašem případě máte vícerozměrné pole, které vytvořím, když vložím pole do pole s názvem data .

$servername = "localhost";
$username = "root";
$password = "";
$dbname = "datadb";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

$sql = "SELECT column1, column2 FROM chartdata";  //This is where I specify what data to query
$result = mysqli_query($conn, $sql);

$data = array();
while($enr = mysqli_fetch_assoc($result)){
    $a = array($enr['column1'], $enr['column2']);
    array_push($data, $a);
}

echo json_encode($data);



  1. T-SQL - Aliasing pomocí =versus as

  2. Co je to za formát?

  3. Kumulativní skupina produktů MySQL podle

  4. Nastavení a konfigurace replikace SQL Server