У меня есть две разные таблицы.
Таблица 1: еда (в которой есть поле с названием еды)
Таблица 2: food_details (в которой есть поле количества еды)
оба связаны идентификатором еды.
Я создал диаграмму js, чтобы отобразить график количества еды, поэтому сейчас диаграмма связана с таблицей 2 и отображает мое количество с меткой id. Но моя проблема в том, что я хочу отобразить название еды в виде метки с количеством, но в таблице 1 указано поле, которое я не знаю, как получить и отобразить вместо идентификатора еды или даже если это возможно.
Здесь мой код
Данные:
<?php
header('Content-Type: application/json');
define('DB_HOST', 'localhost');
define('DB_USERNAME', 'root');
define('DB_PASSWORD', '');
define('DB_NAME', 'chartjs');
$mysqli = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME);
if(!$mysqli){
die("Connection failed: " . $mysqli->error);
}
$query = sprintf("SELECT id, available_quantity FROM food_details ORDER BY id");
$result = $mysqli->query($query);
$data = array();
foreach ($result as $row) {
$data[] = $row;
}
$result->close();
$mysqli->close();
print json_encode($data);
?>
скрипт сценария
<script type="text/javascript">
$(document).ready(function(){
$.ajax({
url: "http://localhost/chartjs/data.php",
method: "GET",
success: function(data) {
console.log(data);
var id = [];
var available_quantity = [];
for(var i in data) {
id.push("id" + data[i].id);
available_quantity.push(data[i].available_quantity);
}
var chartdata = {
labels: id,
datasets : [
{
label: 'Food Storage',
backgroundColor: 'rgba(200, 200, 200, 0.75)',
borderColor: 'rgba(200, 200, 200, 0.75)',
HoverBackgroundColor: 'rgba(200, 200, 200, 1)',
HoverBorderColor: 'rgba(200, 200, 200, 1)',
data: available_quantity
}
]
};
var ctx = $("#mycanvas");
var barGraph = new Chart(ctx, {
type: 'horizontalBar',
data: chartdata
});
},
error: function(data) {
console.log(data);
}
});
});
</script>
Заранее спасибо