Google chart datetime típus != sql datetime típus

Google chart datetime típus != sql datetime típus
2018-10-30T15:15:49+01:00
2018-10-30T20:18:48+01:00
2022-10-15T21:31:44+02:00
MaXs
Üdv!

Egy mysql adatbázisból lekért "datetime" típusú értéket -azaz dátumot-- szeretnék megjeleníteni a vonaldiagramom vízszintes tengelyén, de amennyiben a google chartban "datetime" típust állítok be, nem jelenik meg a diagramom.

A teljes kódom: 

<html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="refresh" content="180" >
<meta http-equiv="content-type" content="text/html; charset=utf-8"/> <title> Hőmérséklet megjelenítése </title> <script type="text/javascript" src="http://www.google.com/jsapi"></script> <script type="text/javascript"> google.load('visualization', '1', {packages: ['corechart']}); </script> <script type="text/javascript"> function drawVisualization() { // Create and populate the data table. var data = new google.visualization.DataTable(); data.addColumn('datetime', 'Idő'); data.addColumn('number', 'Hőmérséklet'); <?php $db_host = ''; $db_database = ''; $db_user = ''; $db_password = ''; $db = mysql_connect($db_host, $db_user, $db_password); mysql_select_db($db_database); $sqlQuery = "SELECT homerseklet, ido FROM test WHERE test.`ido` >= CURRENT_DATE() GROUP BY homerseklet ORDER BY ido ASC LIMIT 10"; $sqlResult = mysql_query($sqlQuery); while ($row = mysql_fetch_assoc($sqlResult)) { echo " data.addRow(['{$row['ido']}', {$row['homerseklet']}]); "; } ?> // Create and draw the visualization. new google.visualization.LineChart(document.getElementById('visualization')). draw(data, {curveType: "none", titleTextStyle: {color: "orange"}, theme: 'material', width: 700, height: 400, vAxis: {maxValue: 50}, vAxis: {minValue: 0}, vAxis: {ticks: [5,10,15,20] }, vAxis: {baseline: 0}, vAxis: {gridlines: {count: 1} }, vAxis: {title: "Celsius fok", titleTextStyle: {color: "orange"}}, hAxis: {title: "", titleTextStyle: {color: "orange"}}, hAxis: { textPosition: 'none' }, interpolateNulls: 1 } ); } google.setOnLoadCallback(drawVisualization); </script> </head> <body style="font-family: Arial;border: 0 none;"> <div id="visualization" style="width: 700px; height: 400px;"></div> </body> </html> String típussal működik, de datetime kellene.
Mutasd a teljes hozzászólást!
Én a manual elolvasásával kezdeném, tökéletesen le van írva milyen formátumot vár:
Dates and Times
Mutasd a teljes hozzászólást!

  • [törölve] kb. ugyanazt írták előttem
    Mutasd a teljes hozzászólást!
  • Köszönöm szépen, de mielőtt a prog.hu -ra felteszek egy kérdést, alaposan körbekeresgélek, s így tettem most is. Nagyon ritkán használok php-t, és még annál is ritkábban java-t, így leginkább az nem volt világos, hogy a google által kívánt formátumra hogyan is konvertáljam át az sql adatbázisban lévő dátumot. Mindeközben mégiscsak az hozta el a megoldást, hogy újra átböngésztem az általad linkelt oldalt, és rájöttem, hogy kihagytam a "new Date() részt, így a konvertálás is jó volt, csak ezen múlott a siker. Nem voltam elég alapos, de mindenképp te juttattál el a megoldáshoz! Köszönöm!

    ui.: Ha esetleg más is hasonló cipőben járna, akkor itt a megoldás helyes szintaktussal:

    $newformat = 'new Date('.date('Y,n,d,H,i,s', strtotime($row['ido'])).')'; //echo " data.addRow([{$row['ido']}, {$row['homerseklet']}]); "; echo " data.addRow([{$newformat}, {$row['homerseklet']}]); ";
    Mutasd a teljes hozzászólást!
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd