Я полный новичок и пытаюсь визуализировать опрос, который я провел для менеджеров и соискателей.Я пытаюсь отобразить результаты в виде линейной диаграммы в Google Charts с вводом менеджера и кандидата по оси Y, с темами, которые им задавались по оси X.Я использовал внутреннее объединение, чтобы собрать их ответы в одну таблицу и поместить темы в виде строк, а ответы менеджера и кандидата в виде столбцов.Но он не будет отображать результаты, и я получаю сообщение об ошибке «Неопределенная переменная» при проверке страницы.
<?php include "db.php";?>
<html>
<head>
<script type="text/javascript"
src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
google.charts.load('current', {'packages':['corechart']});
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([
['experience', 'strengths', 'cultural_fit'],
<?php
$query="select p.output, sum(case when r.candname = 'manager'
then s.answer else 0 end) as Manager, sum(case when r.candname =
'applicant01' then s.answer else 0 end) as Applicant01 from questions p
inner join graphtable s on p.q_id = s.q_id inner join applied r on
s.candidate = r.candidate group by p.output";
$res=mysqli_query($conn,$query);
while($data= mysqli_fetch_array($res)){
$year=$data['experience'];
$sale=$data['strengths'];
$expense=$data['cultural_fit'];
?>
['<?php echo $experience;?>',<?php echo $strengths;?>,<?php
echo $cultural_fit;?>],
<?php
}
?>
]);
var options = {
title: 'Score comparison',
curveType: 'function',
legend: { position: 'bottom' }
};
var chart = new
google.visualization.LineChart(document.getElementById('curve_chart'));
chart.draw(data, options);
}
</script>
</head>
<body>
<div id="curve_chart" style="width: 900px; height: 500px"></div>
</body>
</html>
У меня есть три таблицы:
- применено
candidate | candname
-----------------------
1 manager
2 applicant01
вопросов
q_id | output
---------------------
1 experience
2 strengths
3 cultural_fit
graphtable (да, я знаю, я ужасно разбираюсь в названиях - работать над этим, пока ранние часы не помогли)
candidate | answer | q_id
1 7 1
1 20 2
1 14 3
2 9 1
2 22 2
2 18 3
Я очень признателен за любую помощь, которую вы можетепредоставить - заранее спасибо!Особенно благодарен за ответы в самых простых словах!