Odświeżam temat.
Mam nadzieję że jeśli zobrazuję swój problem to będzie łatwiejsze do jego rozwiązania.
Od razu powiem, że obciąłem w kodzie PHP obsługę select'a z formularza, ponieważ nie w tym rzecz i chciałem aby kod był krótszy.
O co chodzi?
Chodzi o to, że te if'y obsługują różne przypadki filtru.
Pierwszy działa tylko gdy pole name w formularzu zostało uzupełnione.
Drugi gdy tylko gdy pole fraze w formularzu zostało uzupełnione. Trzeci gdy tylko name i fraze zostały uzupełnione. Itd. Itd. Każdy if to jeden przypadek. Czyli jeżeli mam 4 opcje filtru to będę mieć aż 15 if'ów czyli wszystkie możliwe zdarzenia do rozpisania.
Szukam sposobu aby to zautomatyzować, aby nie musieć pisać 15 różnych if'ów.
PHP:
if((!empty($_POST['check_name'])) && (empty($_POST['medycznee'])) && (empty($_POST['check_fraze']))){
$check_name = $_POST['check_name'];
$sql_check_name = "SELECT * FROM procedures WHERE procedures.nameProcedure LIKE '%$check_name%'";
$result_sql = $connection->query($sql_check_name);
while($row = $result_sql->fetch_assoc()){
$name_procedure = $row['nameProcedure'];
$desc_procedure = $row['descProcedure'];
$type_procedure = $row['typeProcedure'];
$file_procedure = $row['fileProcedure'];
echo "Name of procedure: <b>" . $name_procedure . "</b><br>";
echo "Description of procedure: " . $desc_procedure . "<br>";
echo "Type of procedure: " . $type_procedure . "<br>";
echo "<a href=uploads/" . $file_procedure . ">Podejrzyj PDF</a><br>";
echo "-----------------------------------------------<br>";
}
$result_sql->free_result();
}// end if -> name
if((!empty($_POST['check_fraze'])) && (empty($_POST['check_name'])) && (empty($_POST['medycznee']))){
$check_fraze = $_POST['check_fraze'];
$sql_check_name = "SELECT * FROM procedures WHERE procedures.descProcedure LIKE '%$check_fraze%'";
$result_sql = $connection->query($sql_check_name);
while($row = $result_sql->fetch_assoc()){
$name_procedure = $row['nameProcedure'];
$desc_procedure = $row['descProcedure'];
$type_procedure = $row['typeProcedure'];
$file_procedure = $row['fileProcedure'];
echo "Name of procedure: <b>" . $name_procedure . "</b><br>";
echo "Description of procedure: " . $desc_procedure . "<br>";
echo "Type of procedure: " . $type_procedure . "<br>";
echo "<a href=uploads/" . $file_procedure . ">Podejrzyj PDF</a><br>";
echo "-----------------------------------------------<br>";
}
$result_sql->free_result();
}// end if -> fraze
if((!empty($_POST['check_fraze'])) && (!empty($_POST['check_name'])) && (empty($_POST['medycznee']))){
$check_fraze = $_POST['check_fraze'];
$check_name = $_POST['check_name'];
$sql_check_name_fraze = "SELECT * FROM procedures WHERE procedures.descProcedure LIKE '%$check_fraze%' AND procedures.nameProcedure LIKE '%$check_name%'";
$result_sql = $connection->query($sql_check_name_fraze);
while($row = $result_sql->fetch_assoc()){
$name_procedure = $row['nameProcedure'];
$desc_procedure = $row['descProcedure'];
$type_procedure = $row['typeProcedure'];
$file_procedure = $row['fileProcedure'];
echo "Name of procedure: <b>" . $name_procedure . "</b><br>";
echo "Description of procedure: " . $desc_procedure . "<br>";
echo "Type of procedure: " . $type_procedure . "<br>";
echo "<a href=uploads/" . $file_procedure . ">Podejrzyj PDF</a><br>";
echo "-----------------------------------------------<br>";
}
$result_sql->free_result();
}// end if -> fraze and name
HTML:
<form method="post">
<select name="medycznee[]" multiple="multiple">
<option value="lekarz">Lekarze</option>
<option value="k_medyczny">Kierownik Medyczny</option>
<option value="piel_koordy">Pielęgniarka Koordynująca</option>
<option value="technik">Technicy</option>
<option value="pielegniarka">Pielęgniarki</option>
</select><br><br>
<input type="text" name="check_name" /><br><br>
<input type="text" name="check_fraze" /><br><br>
<input type="submit" name="sprawdz" />
</form>