Im в настоящее время получать мои данные из базы данных MySQL с помощью этого PHP:D3 Javascript вытягивать данные тузды неперехваченного TypeError
<?php
$username = "*****";
$password = "******";
$host = "localhost";
$database="db";
$server = mysql_connect($host, $username, $password);
$connection = mysql_select_db($database, $server);
$myquery = "
SELECT `this`, `that` FROM `table`
";
$query = mysql_query($myquery);
if (! $query) {
echo mysql_error();
die;
}
$data = array();
for ($x = 0; $x < mysql_num_rows($query); $x++) {
$data[] = mysql_fetch_assoc($query);
}
$fp = fopen('empdata.json', 'w');
fwrite($fp, json_encode($data));
fclose($fp);
mysql_close($server);
?>
Я тогда запустить этот HTML с предыдущим JSon файлом, который я создал
d3.json("mypreviouslygeneratedjson.json", function (error, data) {
data.forEach(function (d)
{
...
}
...
Это все идет хорошо, я могу генерировать гистограммы, круговые диаграммы и т.д. Но как только я заменить 3 Еорепа, FWRITE и fclose линии с этой линией:
echo json_encode($data);
(плюс я заменить «mypreviouslygeneratedjson.json» с PHP файла, который я упоминал ранее)
Как только я пытаюсь сделать это, я получаю сообщение об ошибке в консоли:
Uncaught TypeError: Cannot read property 'forEach' of undefined
Что такое здесь? Im практически использовал тот же json в обоих случаях.
вы пробовали консоль регистрации данных? – thatOneGuy
@thisOneGuy, когда я консоль регистрирую данные внутри d3.json, я ничего не получаю. Когда я запускаю php, я получаю данные, отобранные на веб-странице. – user1823812
как передать данные переменной, а когда вы запустите php, просто установите переменную в новые данные? Тогда просто избавьтесь от линии d3.json – thatOneGuy