Mysql 在包含所有条件SQL的位置中选择

Mysql 在包含所有条件SQL的位置中选择,mysql,Mysql,我有多个下拉菜单和选项列表 <select id="options"> <option value="all" selected>All</option> <option value="1">Good</option> <option value="2">Bad</option> <option value="3">Okay</option>

我有多个下拉菜单和选项列表

    <select id="options">
    <option value="all" selected>All</option>
    <option value="1">Good</option>
    <option value="2">Bad</option>
    <option value="3">Okay</option>
    </select>
<select id="options1">
    <option value="all" selected>All</option>
    <option value="1">Good</option>
    <option value="2">Bad</option>
    <option value="3">Okay</option>
    </select>
<select id="options2">
    <option value="all" selected>All</option>
    <option value="1">Good</option>
    <option value="2">Bad</option>
    <option value="3">Okay</option>
    </select>
如果选择选项“all”,SQL将不返回任何内容,因为表中没有记录为“all”。如果选择“全部”,如何使其返回所有选项?考虑不同的下拉ID类似

$result = mysqli_real_escape_string($connect, $_POST['options']);

if($result  == "all"){
  $sql = mysqli_query($connect, "SELECT * FROM `table`");
}else{
  $sql = mysqli_query($connect, "SELECT * FROM `table` WHERE `option` = '$result'");
}

这将帮助您

避免SQL语句中的Where条件,如果
$result
的值为“all”,那么如果我有多个select ID怎么办?用户可以选择ID的任意组合。它们可以有一个通用的SQL吗?在操作符@Rubiks中使用SQL,比如:$SQL=mysqli_query($connect,“SELECT*FROM
table
WHERE
option
in=(“$result”)$结果必须具有逗号分隔的值。如果将$result分配给不同的选项ID列,则这将不起作用,例如$result=all from ID options$result=all from ID options 1nice
sql
injection'(°o)/“”,它在哪里?请检查增益“mysqli\u real\u escape\u string”
$result = mysqli_real_escape_string($connect, $_POST['options']);

if($result  == "all"){
  $sql = mysqli_query($connect, "SELECT * FROM `table`");
}else{
  $sql = mysqli_query($connect, "SELECT * FROM `table` WHERE `option` = '$result'");
}