NOVINKA: Získej 40 hodin praktických dovedností s AI – ZDARMA ke každému akreditovanému kurzu!
S účinností od 26. 3. jsme aktualizovali Zásady zpracování osobních údajů – doplnili jsme informace o monitorování telefonických hovorů se zájemci o studium. Ostatní části zůstávají beze změn.

Diskuze: Výběr dat z databáze pomocí checkbox

V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.

Jak se ti líbí článek?
Před uložením hodnocení, popiš prosím autorovi, co je špatněZnaků 0 z 50-500
Jak se ti kurz líbí?
Tvé hodnocení kurzuZnaků 0 z 50-500
Aktivity
Avatar
michal Čepelák:23.11.2016 7:38

Zdravím,
potřeboval bych poradit mám vypsaný data z databáze v tabulce na 10 řádcích a chtěl bych přes checkbox si zaškrtnout vybraný řádky a poslat je na další stránku. Je možné toto provést pouze přes PHP (pozná PHP že je checkbox zaškrtnut) nebo se musí využít i javascript? Děkuji za radu.

 
Odpovědět
23.11.2016 7:38
Avatar
Ondřej Starý:23.11.2016 9:33

Pokud bys měl checkbox např. takhle

<input type="checkbox" name="test" value="value1">

a pak POSTem předal dál, tak na další stránce poznáš, jestli je checkbox zaškrtlý takhle

if(isset($_POST['test']))
{
  echo "checked!";
}
 
Nahoru Odpovědět
+1
23.11.2016 9:33
Avatar
Lava
Člen
Avatar
Lava:23.11.2016 10:11

Budeš musieť z toho vybuildovať pole, ak budeš posielať viac riadkov ďalej. Čiže potom

<input type="checkbox[]" name="test" value="value1">
if(isset($_POST['test'])) {
foreach($_POST['test'] as $item) {
// vybuildujes pole riadkov
}
}
Nahoru Odpovědět
+1
23.11.2016 10:11
Aspartám, sacharín, to je môj vitamín
Avatar
TomasGlawaty
Člen
Avatar
Odpovídá na michal Čepelák
TomasGlawaty:23.11.2016 10:57

Tak do třetice :)

HTML

<input type="checkbox" name="foo[]" value="one">
<input type="checkbox" name="foo[]" value="two">
<input type="checkbox" name="foo[]" value="three">

PHP

if (isset($_POST['foo']) && is_array($_POST['foo'])
{
        # něco bylo zaškrtnuto
        # $_POST['foo'] obsahuje pole zašrtnutých hodnot, např. [0 => 'one', 1 => 'three'];
}
else
{
        # nebylo nic zaškrtnuto
}
 
Nahoru Odpovědět
+2
23.11.2016 10:57
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 4 zpráv z 4.