PHP SQL输出orderby更改刷新整个页面

时间:2017-11-13 16:24:25

标签: php sql google-maps

我有一些PHP代码,最初通过名称升序发送查询。我有箭头glyphicons来选择不同的值来排序。数据是关于陨石的,在数据​​库中有名称,id,类,纬度,经度,年份和质量的列。我有箭头按钮供用户对ASC和DESC的名称,质量和年份进行排序。

我拥有它,以便当用户选择箭头进行排序时,它会使用JQuery加载页面,在此示例中,它会按升序排序。我有一系列有效的输入,因此没有SQL注入的风险。

$("#massASC").click(function () {
     location.href = '?orderby=massASC';
});

我的问题是我有一个Google地图div,可以刷新我正在加载的新页面。

有没有办法只刷新表格数据而不加载新页面?

1 个答案:

答案 0 :(得分:0)

是的,您需要使用AJAX:

<div id="data_sorted">
....
....
</div>

$("#massASC").click(function () {
     $.post('/getData.php', {orderBy: 'massASC'}, function(response) {
         $('#data_sorted').html(response.html);
     });
});

访问getdata.php:

$orderBy = $_POST['orderBy'];
$sql = 'SELECT * from {the_table} order by ' . $orderBy;
$data = // Fetch the data the way you want using $sql query
$html = '';
foreach ($data as $row) {
    $html .= 'SOME HTML for current row';
}

return json_encode(array('html' => $html));