Update MySQL met array
Beste forumleden,
Ik heb de volgende array:
{"status": "ok", "version": "2.47", "request": {"route": "/te" }, "response":
[{ "t": "2013-11-04 00:10", "te": 20.2, "hu": 64} ,
{ "t": "2013-11-04 00:25", "te": 20.0, "hu": 65} ,
{ "t": "2013-11-04 00:40", "te": 20.1, "hu": 65} ,
{ "t": "2013-11-04 01:55", "te": 19.8, "hu": 66} ,
{ "t": "2013-11-04 02:10", "te": 19.8, "hu": 66} ]}
Wie kan mij helpen om deze in de database te laden met de colommen t, te, hu.
Bij voorbaat dank.
Ik heb de volgende array:
{"status": "ok", "version": "2.47", "request": {"route": "/te" }, "response":
[{ "t": "2013-11-04 00:10", "te": 20.2, "hu": 64} ,
{ "t": "2013-11-04 00:25", "te": 20.0, "hu": 65} ,
{ "t": "2013-11-04 00:40", "te": 20.1, "hu": 65} ,
{ "t": "2013-11-04 01:55", "te": 19.8, "hu": 66} ,
{ "t": "2013-11-04 02:10", "te": 19.8, "hu": 66} ]}
Wie kan mij helpen om deze in de database te laden met de colommen t, te, hu.
Bij voorbaat dank.
Als ik je een begin mag geven: Kijk eens naar json_decode().
Dan kan je de 'response' array foor foreach halen en de data in je database plaatsen.
Dan kan je de 'response' array foor foreach halen en de data in je database plaatsen.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
$a = '{"status": "ok", "version": "2.47", "request": {"route": "/te" }, "response":
[{ "t": "2013-11-04 00:10", "te": 20.2, "hu": 64} ,
{ "t": "2013-11-04 00:25", "te": 20.0, "hu": 65} ,
{ "t": "2013-11-04 00:40", "te": 20.1, "hu": 65} ,
{ "t": "2013-11-04 01:55", "te": 19.8, "hu": 66} ,
{ "t": "2013-11-04 02:10", "te": 19.8, "hu": 66} ]}';
$array = json_decode($a);
$response = '';
foreach($array->response as $key=>$item) {
$response .= ($key == 0 ? '' : ',' . PHP_EOL) .'("' . $item->t . '", "' . $item->te . '", "' . $item->hu . '")';
}
$sql = 'INSERT INTO mijn_tabel (t, te, hu) VALUES ' . PHP_EOL . $response;
//echo $sql;
echo '<pre>' . print_r($sql, 1) . '</pre>';
?>
$a = '{"status": "ok", "version": "2.47", "request": {"route": "/te" }, "response":
[{ "t": "2013-11-04 00:10", "te": 20.2, "hu": 64} ,
{ "t": "2013-11-04 00:25", "te": 20.0, "hu": 65} ,
{ "t": "2013-11-04 00:40", "te": 20.1, "hu": 65} ,
{ "t": "2013-11-04 01:55", "te": 19.8, "hu": 66} ,
{ "t": "2013-11-04 02:10", "te": 19.8, "hu": 66} ]}';
$array = json_decode($a);
$response = '';
foreach($array->response as $key=>$item) {
$response .= ($key == 0 ? '' : ',' . PHP_EOL) .'("' . $item->t . '", "' . $item->te . '", "' . $item->hu . '")';
}
$sql = 'INSERT INTO mijn_tabel (t, te, hu) VALUES ' . PHP_EOL . $response;
//echo $sql;
echo '<pre>' . print_r($sql, 1) . '</pre>';
?>
Wow, wat een snelle reactie.
De code van Kris werkt perfect, daar ben ik 2 dagen naar op zoek geweest :-(
Nogmaals hartelijk dank hiervoor.
Rob
De code van Kris werkt perfect, daar ben ik 2 dagen naar op zoek geweest :-(
Nogmaals hartelijk dank hiervoor.
Rob




