我正在编写PHP代码以显示mysql数据库中数据的图形表示。 该代码对于已经存在于数据库中的数据可以很好地工作,但是当我尝试对这些数据进行操作时,它不会出现。
我猜我的问题出在php端-减去两个数组的方式,因为var_dump在while循环内显示值数组,但在其外部显示单个值。我无法解决这个问题。 我的php代码如下:
require "connect.php";
$db_conn = OpenCon();
$dates = '';
$data1 = '';
$data2 = '';
$diff = '';
$items = array();
$get_all_data = "SELECT * from test1";
$total_result = mysqli_query($db_conn, $get_all_data);
while ($row = mysqli_fetch_array($total_result)) {
$date = date('d, M, Y', strtotime($row['my_date']));
$dates = $dates.'"'.$date.'",';
$data1 = $data1. '"'. $row['data1'].'",';
$data2 = $data2. '"'. $row['data2'].'",';
$v1 = $row['data1'];
$v2 = $row['data2'];
$diff=$v1-$v2;
$diff = (string)$diff;
$items[] = $diff;
}
$diff = implode(",", $items);
$dates = trim($dates, ",");
$data1 = trim($data1, ",");
$data2= trim($data2, ",");
$diff= trim($diff, ",");
我的脚本的一部分来显示图形:
{ //dataset also includes data1 and data2, which are displayed correctly
label: 'Difference',
data: [<?php echo $diff; ?>],
backgroundColor: 'red'
}
在这里,我试图显示“ data1”和“ data2”(来自db)以及它们之间的区别(data1-data2)。该图形正确显示了“ data1”和“ data2”,但是根本没有显示data1和data2之间的减法结果。 我将不胜感激所有建议。
更新:我更新了代码,现在可以按需运行了。