我从DB获取一些信息 - 显示在这里:
$link = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
$link->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$handle = $link->prepare("SELECT dropAddress FROM mv_bookingEst WHERE userID='$userID'");
$handle->execute();
$result = $handle->fetchAll(\PDO::FETCH_OBJ);
//print_r($result);
$x = 0;
foreach($result as $obj){
$resultArray[$x] = $obj->dropAddress;
$x++;
}
然后在我的javscript中:
var count = "<?php echo json_encode($resultArray); ?>";
但是我收到以下错误:
语法错误:意外号码 - &gt; var count =&#34; [&#34; -33.8935642,151.20227810000006&#34;,&#34; -33.857653,151.20853699999998 ...
如果我用echo($ resultArray [0])替换json_encode($ resultArray),则值很好。不确定如何解决它,因为我读过的所有内容都使用这种方法。 TIA
答案 0 :(得分:0)
var count = "<?php echo json_encode($resultArray); ?>";
您将返回JavaScript字符串中<{1}} 的结果。您的语法错误显示:
json_encode
除非转换失败,否则Syntax error: unexpected number --> var count = "["-33.8935642, 151.20227810000006","-33.857653, 151.20853699999998 ...
会返回有效的JavaScript语法,因此您应该在javascript中使用它而不使用任何装饰:
json_encode
如果你想考虑失败的可能性,那么你可以改用它:
var count = <?php echo json_encode($resultArray); ?>;