我在index.php中有這個我想得到我的輸入數據(範圍)作爲變量到我的nova.php。當我嘗試使用 $ range = $ _GET ['range'];在nova.php中顯示: 未定義的索引:範圍。我想,我應該把諸如data:{range:range}之類的東西放到myAjax函數中。當然,它不工作從輸入變量通過ajax到外部php
<input id="range" type="text" name="range" class="enter" value="">
<input type="button" onclick="myAjax()" value="Show nearby" />
我的AJAX
function myAjax() {
$.ajax({
type: "POST",
url: 'nova.php',
data:{action:'call_this'},
success:function(html) {
alert(html);
}
});
}
和我nova.php:
<?php
if($_POST['action'] == 'call_this') {
$con=mysqli_connect("localhost","tech","151987","portnew");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$range = $_GET['range'];
// Perform queries
$query = $con->query("SELECT (6371 * acos(cos(radians(53.216908))*
cos(radians(lat)) * cos(radians(lng) - radians(7.453240)) +
sin(radians(53.216908)) * sin(radians(lat)))) AS distance,
port_name FROM ports HAVING distance < '".$range."' ORDER BY distance LIMIT 0 , 20; ");
while ($row = $query->fetch_assoc()) {
$port_list[] = $row['port_name'];
}
echo json_encode($port_list);
}
?>
所以基本上這個腳本是尋找基於緯度,logitude附近的位置。它的工作,當我把...HAVING distance < 150 ORDER BY...
,但我想設置在輸入我的範圍,而不是使用靜態範圍
如果有任何答案是正確的請標記爲正確答案請 – 2016-08-18 10:01:15