Autor | Zpráva | ||
---|---|---|---|
Filip Macháček Profil |
#1 · Zasláno: 5. 11. 2016, 20:07:19
Zdravim dnes jsem našel že google má své API na grafy a chtěl jsem ho využít ale nastal problém s přenosu informací mezi JS a PHP myslel jsem že to vyřeším takhle :
$vysledek = mysqli_query($link, "SELECT * FROM graf_teploty "); while ($zaznam = mysqli_fetch_array($vysledek) ){ $id = $zaznam["id"]; $hodnota = $zaznam["hodnota"]; $output = $output + "[" + $id + ", " + $hodnota + "], "; } ?> <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"> </script> <script> google.charts.load('current', {packages: ['corechart', 'line']}); google.charts.setOnLoadCallback(drawBasic); function drawBasic() { var data = new google.visualization.DataTable(); data.addColumn('number', 'X'); data.addColumn('number', 'Dogs'); data.addRows([ <?php echo json_encode($output); ?> ]); var options = { hAxis: { title: 'Time' }, vAxis: { title: 'Popularity' } }; var chart = new google.visualization.LineChart(document.getElementById('chart_div')); chart.draw(data, options); } </script> <html> <div id="chart_div"></div> </html> data.addRows([ <?php echo json_encode($output); ?> ]); |
||
mckay Profil |
#2 · Zasláno: 5. 11. 2016, 20:30:15
Filip Macháček:
V php části vytvořte pole v takovém formátu, jako ho očekává data.addRows(), dle dokumentace, to bude něco ve stylu: [ ['Work', 11], ['Eat', 2], ['Commute', 2], ['Watch TV', 2], ['Sleep', {v:7, f:'7.000'}] ] Váš kód by mohl vypadat nějak takto: // Připravím si pole $output = []; while ($zaznam = mysqli_fetch_array($vysledek) ){ $id = $zaznam["id"]; $hodnota = $zaznam["hodnota"]; $output[] = [ $id , $hodnota ]; // A pak do toho pole strkám další pole } Tam kde teď vypisujete json_encode($output); to nechte všechno stejné a mělo by to začít fungovat.
|
||
Filip Macháček Profil |
#3 · Zasláno: 5. 11. 2016, 20:47:57
PHP IDE si stěžuje na Tohle a nefunguje ...:
$output = [];
|
||
Rfilip Profil |
#4 · Zasláno: 6. 11. 2016, 08:32:38
Doporučuju upgradenout verzi PHP, protože tento způsob tvorby polí byl přidaný do PHP verze 5.4.0, která vyšla na jaře 2012.
|
||
Časová prodleva: 8 let
|
0