我正在构建一个投资组合页面并创建了一些过滤器来用户组织投资组合列表。过滤器是下拉列表,如下所示:
<select name="category" id="filter-category" class="chosen-select">
<option value="0">All</option>
<option value="1">Magazine</option>
<option value="2">Books</option>
...
</select>
还有另一种可供客户和项目订单选择的选择。
我使用 jquery ajax 发送这个值。以下是摘录:
$('.chosen-select').change( function(){
var client= $('#filter-client option:selected').val();
var category = $('#filter-category option:selected').val();
var order = $('#filter-order option:selected').val();
$.ajax({
type: 'POST',
data: ({client: client, category : category, order : order}),
dataType: 'json',
url: 'php/portfolio.php',
success: function(data) {
console.log(data);
}
});
});
我的问题是:我需要为每种情况创建一个查询吗?一种用于用户仅选择客户时,一种用于选择客户和类别,依此类推?
最佳答案
不,您不需要这样做。您发送三个过滤器(组合框)的数据,并在 php/portfolio.php 中找到用户更改的过滤器。 例如:
$sql = "SELECT * FROM photos WHERE ....."
if($_POST['client']!="")
$sql.=" AND client=".$_POST['client'];
if($_POST['category']!="")
$sql.=" AND category=".$_POST['category'];
...
这就是你想要的吗?
关于php - 使用 ajax 进行多项选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20070012/