Autor Zpráva
danhill
Profil
Ahoj, přemýšlím a hledám a nevím. Myslím,že na to jdu špatně.
Tak se raději zeptám odborníků, jak se to dělá.
Zajímá mě hlavně podstata teorie, jak to správně udělat.
Uživatelem zadaný filtr výpisu dat z db.
Mám tabulky:
[final] (id,date,user,code,name,archive)
kde sloupec archive je ANO nebo NE
a
[found] (id,date,user,code)
(přičemž druhá tabulka skrývá údaj,který říká,že uživatel ten a ten má údaj z první tabulky v nějaké vlastním seznamu)


Na frontendu je formulář se selecty.
<select name="stav">
<option value="bez_archive">Bez archive</option>
<option value="jen_archive">Jen archive</option>
<option value="all">Vše</option>
</select>
a druhý
<select  name="found">
<option value="bez_nalezu">Bez mých nálezů</option>
<option value="jen_nalezene">Jen nalezené</option>
<option value="all">Vše</option>
</select>

Po odeslání formůláře dostanu dvě proměnné.
Tedy POST Stav a Found

V každé proměnné jsou tři možné varianty.
Tedy je tady v tomto případě celkem 9 možných kombinací jak formulář vyplnit.

Nějak se mi nezdá, že bych musel vytvořit 9 různých selectů do db.
Tedy něco jako :
if (($_POST["stav"] == "all") & ($_POST["found"] == "all")) 
else if (($_POST["stav"] == "bez_archive") & ($_POST["found"] == "all"))
else if (($_POST["stav"] == "jen_archive") & ($_POST["found"] == "all"))
else if (($_POST["stav"] == "all") & ($_POST["found"] == "bez_nalezu"))
.
.
.

Nebo se to opravdu tak dělá??? Když bych přidal do formuláře další select se třemi možnostmi, už je to 27 různých selectů do db.
Příjde mi to velmi nepřehledné.
Nějak tuším,že na tyhle věci se půjde trochu jinak.
Ale asi nevím jak,tak prosím o nakopnutí.
Děkuji moc.
Keeehi
Profil
No v zásadě vezmeš hodnotu z formuláře, nějak ji přetransformuješ/vyfiltruješ a přímo vložíš do dotazu. Ten jsi sem ale nenapsal. Jak by vypadal třeba ten s vybrnými "Jen archive" a "Jen nalezené"?

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: