Autor Zpráva
Rodgers23
Profil
Zdravím,
potřeboval bych poradit zda se dá nějak udělat, že když mám ve svém vyhledávači zadaný option selected, tak mi vyhledá všechna data v option? Jsem začátečník, takže chápu, že to bude asi triviální otázka.

                  <select name="pokus">
                        <option selected>Vyberte</option>
                        <option>a</option>
                        <option>b</option>
                        <option>c</option>
                        <option>d</option>
                    </select>

Jde mi o to, že když nevyberu option "a...d", ale zanechám pouze selected "Vyberte", tak se mi vyhledají všechna data "a...d". To se musí nějak udělat v php array, že? Díky za odpověď
juriad
Profil
Rodgers23:
Ano, musíš si to zařídit v PHP.
Přidej value k jednotlivým položkám a k té první dej prázdné: Živá ukázka
Pak v PHP dostaneš v $_GET['pokus'] buď 'a', 'b', 'c', 'd', nebo ''.
Pomocí empty pak zjistíš tu prázdnou, a podle toho se zařídíš.

Často však nechceš hledat všechna data, tedy a, b, c, d, ale naopak nepřidat podmínku do SQL dotazu.
$dotaz = "SELECT * FROM tabulka WHERE 1=1 ";
if (! empty($_GET['pokus']) {
  $dotaz .= " AND pokus = '" . $_GET['pokus'] . "'";
}
Nezapomeň tu zvýrazněnou část escapovat.

Jestli použiješ $_GET, nebo $_POST záleží na účelu použití formuláře.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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