使用MySQL和PHP从下拉列表中选择特定选项来过滤记录

使用MySQL和PHP从下拉列表中选择特定选项来过滤记录,php,jquery,mysql,ajax,Php,Jquery,Mysql,Ajax,在我的HTML页面中,我有一个下拉列表,其中包含几个选项,即一些公司名称。当我选择某个公司时,我想获得相关记录。我对此没有问题。但我想在列表顶部添加一个“All”选项,当我选择“All”时,所有记录都会显示出来。由于我将所选公司名称发布到后端,并执行常规sql查询以查找公司名称与我发布的公司名称相等的记录,因此我绝对不能将“全部”发布到后端。有没有一个简洁的方法来实现这一点?最简单(也是最简洁)的方法可能是在服务器端放一个if(){语句。 所以 if($input=='all'){ $sql=;

在我的HTML页面中,我有一个下拉列表,其中包含几个选项,即一些公司名称。当我选择某个公司时,我想获得相关记录。我对此没有问题。但我想在列表顶部添加一个“All”选项,当我选择“All”时,所有记录都会显示出来。由于我将所选公司名称发布到后端,并执行常规sql查询以查找公司名称与我发布的公司名称相等的记录,因此我绝对不能将“全部”发布到后端。有没有一个简洁的方法来实现这一点?

最简单(也是最简洁)的方法可能是在服务器端放一个if(){语句。 所以

if($input=='all'){
$sql=;
}否则{
$sql=;
}

然后运行
$sql

查询。

我确信有一个简洁的方法来实现这一点。所有=>*设置服务器端应该不会那么困难…嗨@KevinBowersox谢谢你简洁的回答。嗨@Rorymcrossan我会记住这一点。嗨@chrisbradbury谢谢你的回答。我实际上考虑过使用if-else来运行qu但是在我的代码中,我有几个下拉列表,即几个过滤条件。因此,如果I if-else,那么就会有太多嵌套的if-else语句。你可以使用
WHERE x,比如“%”
Hi@chrisbradbury。最后,我使用if-else解决了这个问题。我所做的与你的有点不同:首先,我编写一个sql,它将检索所有如果$input!='all',他会记录每个条件输入,我会附加一个条件字符串,如“and company_name=$input…”,这样如果我选择all,原始sql中不会附加任何内容,它会返回所有记录。感谢您的帮助!
if($input == 'all'){
     $sql = <select all code>;
}else{
     $sql = <select any one code>;
}