我试图获取我的mysql数据我读过一些文章 https://developers.google.com/maps/documentation/javascript/examples/layer-heatmap
<?php
$locations = mysql_query("select * from locations");
?>
<?php
$lats = ""; // string with latitude values
$lngs = "";
while ($locat = mysql_fetch_array($locations))
{
$lats = $locat['latitude'];
$lngs = $locat['longitude'];
$taxiData = [new google.maps.LatLng($lats,$lngs)];
}
?>
而不是var taxiData = [new google.maps.LatLng(37.782551, -122.445368)];
现在我试图获取那些纬度和经度的值。
答案 0 :(得分:0)
您正在尝试在PHP中执行js示例。真的,你需要学习一些关于网页开发的知识,但你可以尝试这样的尝试让它立即运行:
<?php /* You should add all needed external js scripts above */?>
<script type="text/javascript">
//Here You should put everything before the points array declaring from the example
<?php
$locations = mysql_query("select * from locations");
echo 'var taxiData = [';
while ($locat = mysql_fetch_array($locations))
echo "new google.maps.LatLng({$locat['latitude']}, {$locat['longitude']}),\n";
echo '];';
//Here You should put everything after the points array declaring from the example
?>
</script>
上面的代码非常糟糕,但js部分将被发送到浏览器,浏览器将尝试执行它。无论如何,你应该读一点关于web开发的内容,否则很多简单的事情对你来说都很难。祝你好运。
答案 1 :(得分:0)
您似乎将php
和javascript与放弃混合。如果要发出javascript命令,则必须确保它看起来像浏览器的javascript。也许像是
<?php
$locations = mysql_query("select * from locations");
?>
<?php
$lats = ""; // string with latitude values
$lngs = "";
while ($locat = mysql_fetch_array($locations))
{
$lats = $locat['latitude'];
$lngs = $locat['longitude'];
$taxiString = "new google.maps.LatLng($lats,$lngs)";
?>
<script type="text/javascript">
var taxiData = [<?=$taxiString?>];
// do whatever you want in javascript
</script>
}
?>
一个经过测试的片段,展示了这个想法(我无法轻易地测试上述内容):
<html>
<?php
for($i=0;$i<2;$i++) {
$myString = "It works $i times!";
echo $myString;
?>
<script type="text/javascript">
alert("<?= $myString; ?>");
</script>
<?php
}
?>
</html>
运行时,您会看到php
字符串$myString
已正确插入JavaScript。
让我澄清一点。
Javascript是由BROWSER执行的代码。 php是在SERVER上执行的代码。浏览器将向谷歌地图询问一些信息 - 确保浏览器发出的命令是正确的,这是你的任务。 php很不错,它允许您更改浏览器中显示的文本。
了解差异的方法是查看浏览器中网页的源代码。我在上面发布的第二个代码段实际上可以在http://www.floris.us/SO/mix.php
上找到当您在浏览器中打开它,并查看源代码时,您将看到
<html>
It works 0 times!<script type="text/javascript">
alert("It works 0 times!");
</script>
It works 1 times!<script type="text/javascript">
alert("It works 1 times!");
</script>
</html>
稍微分解一下(并为了清晰起见添加一些回车):
<html> - this was text in my original file
It works 0 times! - this was the result of a php echo command
<script type="text/javascript"> - literal text in original file
alert(" - literal text
It works 0 times! - the result of <?= $myString; ?>
"); - literal text
</script> - literal text
然后是疯狂的东西 - 同样的事情重复(因为php循环) - 但有一个不同的值(1而不是0):
It works 1 times!<script type="text/javascript">
alert("It works 1 times!");
</script>
</html> - this last line did not repeat because it's outside the php loop
最终评论:
<?= $myString; ?>
是
的简写<?php echo $myString; ?>