在page1.php上,我使用Ajax调用page2.php (车辆或船只的Lijst)。之后,我想使用另一个Ajax查询对结果进行排序。
page1.php上的2个jqueries代码
function display_cars() {
jQuery.ajax({
type: 'GET',
url: 'page2.php?action=cars',
success: function (msg) {
$('#show_results').html(msg);
}
});
}
function display_boats() {
jQuery.ajax({
type: 'GET',
url: 'page2.php?action=boats',
success: function (msg) {
$('#show_results').html(msg);
}
});
}在page2.php上,我有mysql查询:
if ($action == "car") {
$sql = "SELECT *
FROM table
WHERE cars = $cars
ORDER BY date DESC
";
}
if ($action == "boats") {
$sql = "SELECT *
FROM table
WHERE boats = $boats
ORDER BY date DESC
";
}这个mysql查询的结果:
梅塞德斯: 50 宝马: 10 本田: 20
现在,我希望使用对每个结果进行排序(按数量排序)。
我正在考虑使用php会话,但我不确定它是否是正确的解决方案。
发布于 2016-11-29 11:09:14
您可以这样调用ajax
function sort_boats() {
var data = {
action:"boats",
sort:"desc"
}
jQuery.ajax({
type: 'GET',
url: 'page2.php',
data:data,
success: function(msg) {
$('#show_results').html(msg);
}
});
} 在php中,尝试如下
if(isset($_GET['action'])&&isset($_GET['sort'])) {
$action = $_GET['action'];
$sort = $_GET['sort'];
$sql = "SELECT *
FROM table
WHERE boats = $action
ORDER BY date DESC , quantity $sort";
}您只需在sql查询中使用(假设它是表的列之一)就可以做到这一点。
PS:使用POST更好的安全。
https://stackoverflow.com/questions/40864289
复制相似问题