1

この Assoc 配列を PHP から配置して JS に送信し、Google マップ API で使用しようとしています。私が知っているコードは次のとおりです。

マーカー.php

<?php
$config = parse_ini_file('config.ini');
$sql = "SELECT `secName` , `secLat` , `secLng` FROM `guia_sectors`";

if (!$mysqli = new mysqli ($config['HOST'], $config['USER'], $config['PASSWORD'], $config['DB']))
{
    echo "MySQLI Error: " . $mysqli->error;
}

$result = $mysqli->query($sql);

for ($i = 0; $i < $result->num_rows; $i++) {
    echo json_encode($result->fetch_array(MYSQLI_ASSOC));
}

?>

JS

function getMarker () {
$.get ('includes/marker.php', function (data) {
    alert(data);
});

}

これは Marker.php から取得した配列です。Lat と Lng を使用する必要があります。

{"secName":"aosindaiosdn","secLat":"-54.74584205236408","secLng":"-68.19616198539734"}{"secName":"JAsud","secLat":"-54.74584205236408","secLng":"-68.19616198539734"}

アップデート:

私は答えを見つけました。問題は、連想配列を間違って送信していたことです。

解決策はこれを行うことです:

$result = $mysqli->query('SELECT...');

$rows = array();
while ($r = $result->fetch_array(MYSQLI_ASSOC)) {
$rows[] = $r;
}
echo json_encode($rows);
4

1 に答える 1