Zeitstempel beim Einlesen aus mysql in json umwandeln
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
antwort
ausgabe
befehl
code
datenbank
datum
dokumentation
erstellung
erwarten
file
http
manual
ordern
output
spalten
stern
umrechnung
url
veraltet url
zeitstempel
-
Hallo liebe Leute,
ich bastle an einer Auswertung einer mysql-Datenbank (3 Spalten: 1x Zeitstempel YYYY-MM-DD HH:MM:SS sowie zwei Integer) und lese die Daten bereits mit folgendem Code in JSON ein:
$sql = "SELECT * FROM temp ORDER BY timestamp"; $query = mysql_query($sql) or die("Anfrage nicht erfolgreich"); $output = array(); while ( $row = mysql_fetch_assoc($query) ) { $output[] = $row; } echo json_encode($output);
Die Ausgabe habe ich mittels http://jsonlint.com/ kontrolliert - sie passt.
Nun habe ich das Problem, dass ich für die weitere Verarbeitung der Daten in Java statt dem gut lesbaren Zeitstempel auf Unix-Time umrechnen muss. Für einzelne Werte könnte das wie folgt funktionieren:
$javazeit = mktime($row['timestamp'])*1000;
Leider fehlt mir eine Idee, wie ich diese Umrechnung einbauen muss, damit die json-Ausgabe dann auch wirklich passt.
Könnt ihr mir vielleicht weiterhelfen?
Vielen Dank!
Liebe Grüße,
Christoph
Beitrag zuletzt geändert: 5.8.2016 20:23:31 von chst -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Du kannst die Umrechnung in den Unix-Timestamp bereits von der Datenbank ausführen lassen.
Deine Abfrage sieht momentan so aus:SELECT * FROM temp ORDER BY timestamp
Zuerst musst du den Stern nach dem Wort SELECT durch eine mit Komma getrennte Aufzählung aller Spaltennamen ersetzen.
Dann kannst du anstatt dem Spaltennamen
einfachtimestamp
einfügen. So errechnet dir die DB automatisch den benötigten Wert.unix_timestamp(`timestamp`)
-
Super, herzlichen Dank für diese Antwort, das hilft mir sehr!!
Ich habe das json-File nun unter https://chst.lima-city.de/highcharts5/json.php "erfolgreich" erstellt. Leider erwarten http://www.highcharts.com/demo zwar derartige json-Files - laut der Dokumentation sollen sie aber wie folgt formatiert sein: https://www.highcharts.com/samples/data/jsonp.php?filename=aapl-c.json&callback=?.
Weißt du vielleicht, ob das ein typisches Format ist, oder ob es einen ähnlichen Befehl wie
für die Erstellung einer Ausgabe ohne Spaltennamen gibt?echo json_encode($output, JSON_NUMERIC_CHECK);
Liebe Grüße,
Christoph
Beitrag zuletzt geändert: 6.8.2016 21:34:20 von chst -
Ersetze einmal diesen Ausdruck:
durch das hier:mysql_fetch_assoc($query)
Vermutlich reicht das schon. Wenn nicht, schau ich nochmal drüber.mysql_fetch_row($query)
-
Optimal, das war es, jetzt funktioniert alles!! Vielen Dank für deine Unterstützung und einen schönen Abend!
-
Danke für den Tipp - diese Befehle werde ich mir auf jeden Fall mal ansehen!
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage