首先,我想提一下,我一直在疯狂地尝试和搜索以找到解决方案,但到目前为止还没有运气。我的问题如下:
我有一个包含几十行的 MySQL 数据库,我创建了一个 jQuery 网格来显示数据;这个页面已经在工作了。根据要求,我正在整理一个页面,人们可以在其中从复选框中选择几个选项并过滤结果。这就是它的工作方式:
第 1 页将有 3 组复选框(姓名、地点、语言),每组都有不同的选项([姓名:大卫、尼克等]、[地点:纽约、华盛顿、孟买、伦敦、迈阿密]、[语言:英语,西班牙语]。一旦用户选择了他的选项,它将提交一个类似这样的表单
grid.php?location=华盛顿&location=孟买&language=英语&name=大卫
创建字符串很容易,但是接收这个参数并放置在一个数组中然后创建 SQL 语句的接收器是我苦苦挣扎的地方。
我试过这样的事情:
$location= $_GET['location'];
$language= $_GET['language'];
$name= $_GET['name'];
if($location!=""){
$where[] = 'location=';
$where_args[] = $location;
}
//same code for the other 2 options
$where_clause = implode(' OR ', $where_args);
$sql_json = "SELECT * FROM myTable WHERE $where_clause ORDER BY id DESC";
没有一个选项是强制性的,因此查询需要接受该值可能设置也可能不设置的可能性,因此它最终可能类似于 grid.php?language=English。
我知道上面的代码不太有效,但如果有人能指出我正确的方向,我将不胜感激。