Создавать динамический SQL с выражениями «И», не путая вложенные условные выражения?
Я довольно плохо знаком с php и кодированием в целом.
У меня есть ряд условий, которые мне нужно проверить, если они установлены. Это $ option1, $ option2, $ option3
if (isset($option1)){
if (isset($option2)){
if (isset($option3)){
$query = "SELECT *
FROM Group
WHERE FirstOption = '$option1' AND SecondOption = '$option2' AND ThirdOption = '$option3'";
}
else {
$query = "SELECT *
FROM Group
WHERE FirstOption = '$option1' AND SecondOption = '$option2";
}
}
else {
$query = "SELECT *
FROM Group
WHERE FirstOption = '$option1' AND ThirdOption = '$option3";
}
}
else {
// .. snip, much more duplicated code ..
}
Так что проблема здесь в том, что мне нужны уникальные запросы для mysql, основанные на том, установлены ли условия или нет. Но они находятся друг в друге, и у меня на самом деле есть 7 вариантов, так что ветвление очень большое! Я остановился в три часа после почти смущения себя.
Должен быть намного лучший способ написать это - кто-нибудь может помочь мне лучше понять?