Я не читал поля, поэтому вам придется адаптироваться, но это больше вопрос php, чем вопрос mysql. Вам нужно будет составить список критериев, а затем объединить их вместе.
$criterias = array();
if(isset($_POST['option1']) && $_POST['option1'] == 'yes'){
$criterias[] = '(mytable.myfield1 = 1)';
}
if(isset($_POST['option2']) && $_POST['option2'] == 'yes'){
$criterias[] = '(mytable.myfield2 = 1)';
}
$sql = 'SELECT * FROM mytable'.(count($criterias) > 0 ? ' WHERE '.implode(' OR ', $criterias) : '').' ORDER BY mytable.sortkey';
Это поможет вам составить любой список критериев, который вы хотите. Обратите внимание, что при взлете я использовал ИЛИ, потому что эти критерии кажутся инклюзивными, поэтому вы показываете работников по их типу в зависимости от выбора пользователя. Но я точно не уверен, что это то, что вы хотели.
Обратите внимание, что вы можете настроить свои критерии намного сложнее и объединить две информации вместе, например:
if(isset($_POST['option2']) && $_POST['option2'] == 'yes'){
$criterias[] = '(mytable.myfield2 = 1 AND mytable.location = "'.$_POST['location'].'")
}
Таким образом, вы можете иметь много типов, которые относятся к определенному местоположению или даже к разным местоположениям одновременно, если хотите.
Удачи