Javascript 传递lat和long as url参数
我开始使用API工具,需要通过URL传递参数来动态更改我的映射,这是我的URL,下面是不起作用的代码。检索参数的PHP部分可以工作,但将这些参数转换为JS变量却不行,“mylat”就是一个不起作用的例子 希望有人能帮助我, 谢谢Javascript 传递lat和long as url参数,javascript,php,url,arguments,Javascript,Php,Url,Arguments,我开始使用API工具,需要通过URL传递参数来动态更改我的映射,这是我的URL,下面是不起作用的代码。检索参数的PHP部分可以工作,但将这些参数转换为JS变量却不行,“mylat”就是一个不起作用的例子 希望有人能帮助我, 谢谢 var映射; var mylat=//-38.22173; var mylong=145.0732905; var myvilla='177'; 函数initMap() { var mylatng={lat:mylat,lng:mylong}; map=new go
var映射;
var mylat=//-38.22173;
var mylong=145.0732905;
var myvilla='177';
函数initMap()
{
var mylatng={lat:mylat,lng:mylong};
map=new google.maps.map(document.getElementById('map'){
中心:myLatLng,
缩放:18,地图类型ID:“卫星”
});
===============================已解决===使用PHP+Javascript
<?php
$file_handle = fopen("villaloc.csv", "r");
$villa = $_GET['villa'];
// if visitor wants to start from their current location
$mylat = $_GET['mylat'];
$mylong = $_GET['mylong'];
$start = $_GET['start'];
$walk = $_GET['walk'];
$foundrecord = 0;
while (!feof($file_handle) )
{
$line_of_text = fgetcsv($file_handle, 128);
if ($line_of_text[0] == $villa)
{
$foundrecord = 1;
break;
}
}
fclose($file_handle);
if($foundrecord == 0)
{
/* Redirect browser */
header("Location: https://squadron-125.org.il/villanotfound.html");
/* Make sure that code below does not get executed when we redirect. */
exit;
}
?>
<script>
var loricket = 0;
var VillaNo = parseFloat(<?php echo $line_of_text[0] ?>);
var mylat = parseFloat(<?php echo $line_of_text[1] ?>);
var mylong = parseFloat(<?php echo $line_of_text[2] ?>);
loricket = parseInt(<?php echo $line_of_text[3] ?>);
var-loricket=0;
var VillaNo=parseFloat();
var mylat=parseFloat();
var mylong=parseFloat();
loricket=parseInt();
使用$\u GET
是从查询字符串中获取值
另外,您的纬度和经度是字符串,因为它来自URL查询字符串
尝试将其转换为如下所示的浮动
var map;
var mylat = parseFloat(<?php echo $_GET['urllat'] ?>); //-38.22173;
var mylong = parseFloat(<?php echo $_GET['urllong'] ?>);
var myvilla = '177';
function initMap()
{
var myLatLng = {lat: mylat, lng: mylong};
map = new google.maps.Map(document.getElementById('map'), {
center: myLatLng,
zoom: 18,mapTypeId: 'satellite'
});
var映射;
var mylat=parseFloat();//-38.22173;
var mylong=parseFloat();
var myvilla='177';
函数initMap()
{
var mylatng={lat:mylat,lng:mylong};
map=new google.maps.map(document.getElementById('map'){
中心:myLatLng,
缩放:18,地图类型ID:“卫星”
});
使用$\u GET
是从查询字符串中获取值
另外,您的纬度和经度是字符串,因为它来自URL查询字符串
尝试将其转换为如下所示的浮动
var map;
var mylat = parseFloat(<?php echo $_GET['urllat'] ?>); //-38.22173;
var mylong = parseFloat(<?php echo $_GET['urllong'] ?>);
var myvilla = '177';
function initMap()
{
var myLatLng = {lat: mylat, lng: mylong};
map = new google.maps.Map(document.getElementById('map'), {
center: myLatLng,
zoom: 18,mapTypeId: 'satellite'
});
var映射;
var mylat=parseFloat();//-38.22173;
var mylong=parseFloat();
var myvilla='177';
函数initMap()
{
var mylatng={lat:mylat,lng:mylong};
map=new google.maps.map(document.getElementById('map'){
中心:myLatLng,
缩放:18,地图类型ID:“卫星”
});
如果要重新加载同一页面(在向url传递参数后运行同一页面),请使用$\u GET方法检索纬度和经度
var mylat = parseFloat(<?php echo $_GET['urllat'] ?>);
var mylong = parseFloat(<?php echo $_GET['urllong'] ?>);
var mylat=parseFloat();
var mylong=parseFloat();
使用parseFloat可以将php输出准确地转换为浮点值
如果这不起作用,或者如果您正在将url详细信息发送到另一个页面,则使用以下方法
<?php
$url=$_SERVER['REQUEST_URI']; //get the url
$parts = parse_url($url);
parse_str($parts['query'], $query);
?>
var mylat = <?php echo $query['urllat']; ?>;
var mylong = <?php echo $query['urllong']; ?>;
var mylat=;
var mylong=;
希望这可以解决问题。如果您正在重新加载相同的页面(在向url传递参数后运行相同的页面),请使用$\u GET方法检索纬度和经度
var mylat = parseFloat(<?php echo $_GET['urllat'] ?>);
var mylong = parseFloat(<?php echo $_GET['urllong'] ?>);
var mylat=parseFloat();
var mylong=parseFloat();
使用parseFloat可以将php输出准确地转换为浮点值
如果这不起作用,或者如果您正在将url详细信息发送到另一个页面,则使用以下方法
<?php
$url=$_SERVER['REQUEST_URI']; //get the url
$parts = parse_url($url);
parse_str($parts['query'], $query);
?>
var mylat = <?php echo $query['urllat']; ?>;
var mylong = <?php echo $query['urllong']; ?>;
var mylat=;
var mylong=;
希望这可以解决问题。plz删除mylat变量中的json_编码。希望这会起作用。您用于检索urllat的代码是否正常?此代码提供-38.22173;输出?plz删除mylat变量中的json_编码。希望这会起作用。您用于检索urllat的代码是否正常?此代码e为您提供-38.22173;输出?嗨,Rahul,谢谢您的建议,但它不起作用,请自行查看,页面加载为空…您在js文件中有错误。请检查控制台并删除错误谢谢,这对我来说很好:var mylat=parseFloat();你好,Rahul,谢谢你的建议,但它不起作用,请自行查看,页面加载为空…js文件中有错误。请检查控制台并删除错误谢谢,这对我来说很好:var mylat=parseFloat();嗨,sumit,谢谢你的帮助,但它不工作,页面加载为空嗨,sumit,谢谢你的帮助,但它不工作,页面加载为空