У меня есть файл JSON с данными, выводимыми из другой программы, и я пытаюсь импортировать эти данные в таблицу MySQL со следующими двумя проблемами.JSON to MySQL Таблица
данные никогда не будут ставить в таблице и не возвращаются без ошибок, когда я эхо из вывода и ввести его вручную в базу данных она работает отлично.
Данные изменяются из значений JSON при выводе в массив, необходимый для строки импорта sql (значения).
JSON:
{
"version" : 90200,
"protocolversion" : 70002,
"blocks" : 322877,
"timeoffset" : -1,
"connections" : 49,
"proxy" : "",
"difficulty" : 34661425923.97693634,
"testnet" : false,
"relayfee" : 0.00001000,
"errors" : ""
}
PHP:
<?php
$data = file_get_contents("data.json");
$array = json_decode($data, true);
$keys = array_keys($array);
$rows = array();
foreach($keys as $key) {
$value = $array[$key];
$rows[] = "'" . $value . "'";
}
echo $rows;
$values = implode(",", $rows);
$hostname = 'localhost';
$username = 'username';
$password = 'password';
$database = 'database';
try
{
$dbh = new PDO("mysql:host=$hostname;dbname=$database", $username, $password);
if($dbh)
echo 'Connected to database'; // echo a message saying we have connected
$datetime = date("Y-m-d H:i:s");
$count = $dbh->exec("INSERT INTO getinfo VALUES ('','" . $datetime . "'," . $values . "");
echo "Going into DB: ('','" . $datetime . "'," . $values . ")";
echo $count;// echo the number of affected rows
$dbh = null;// close the database connection
}
catch(PDOException $e)
{
print_r($e);
}
?>
Информация вторил, и посылается как ЗНАЧЕНИЯ:
('','2014-09-28 16:11:33','90200','70002','322880','-1','49','','34661425923.977','','1.0E-5','')
Первые два значения ручного ввода я созданных для ID и DATE/TIME
Как вы можете видеть, выход не совпадает с входом, однако эти значения работают с ручным запросом INSERT, но не через этот скрипт (следовательно, две проблемы).
Для какой цели вы хотите сохранить эти данные? Я бы сказал, хранить всю строку JSON вместо десериализации, а затем повторно сериализовать в CSV – Gervs
Я хотел бы создавать графики из этих данных с течением времени и рассчитывать сохранить его таким образом было бы лучше, если бы они хранились в JSON, тогда мне понадобилось бы вытащить больше данных, чем нужно, и деконструировать на моей стороне. – medoix