Do nového roku jako lepší programátoři? Znovu otevíráme večerní školu programování. Nette framework, návrhové vzory, testování nebo vůbec poprvé kurzy ASP.NET dostupné odkudkoli v republice.
Avatar
oggymotslp
Člen
Avatar
oggymotslp:

Ahoj,
mám výpis uživatelů s jejich tokeny, a u každého mám checkbox.

echo('<tr><td>' . $clanek['id'] . '</td><td>' . $clanek['username'] . '</td><td>' . $clanek['jmeno'] . ' ' . $clanek['prijmeni'] . '</td><td>' . $clanek['token'] . '</td><td><input name="' . $clanek['id'] . '" value="' . $clanek['token'] . '" type="checkbox"></td></tr>');

Celé to mám v formuláři metodě POST. Jak mám udělat to, když uživatel vybere pomocí toho checkboxu nějaké možnosti třeba (A, B a D), tak to od každé té možnosti vypíše její token? A vše do jednoho řádku pouze s mezerou, třeba ; ?

Děkuji všem :)

Odpovědět 24.9.2016 11:26
Proč to dělat jednoduše, když to jde i složitě :D
Avatar
gorri
Člen
Avatar
Odpovídá na oggymotslp
gorri:

Zkus to nějak rozvézt. Nejsem sice v PHP nějak extra borec ale nechápu oč přesně jde.

 
Nahoru Odpovědět  +1 29.9.2016 21:23
Avatar
roverjedla
Člen
Avatar
roverjedla:
$clanek['prijmeni'];

Vypisuješ příjmení článku?? Nerozumím tomu proč je to takto pojmenované...

 
Nahoru Odpovědět  +1 29.9.2016 21:31
Avatar
oggymotslp
Člen
Avatar
Odpovídá na roverjedla
oggymotslp:

Pojmenování neřeš. Jde o to, že to je takto:

foreach ($clanky as $clanek)
{



        echo('<tr><td>' . $clanek['id'] . '</td><td>' . $clanek['username'] . '</td><td>' . $clanek['jmeno'] . ' ' . $clanek['prijmeni'] . '</td><td>' . $clanek['token'] . '</td><td><input type="checkbox"></td></tr>');

}

A potřebuji vybrat pouze ty, kteří jsou označeni checkboxem.

Nahoru Odpovědět 4.10.2016 15:47
Proč to dělat jednoduše, když to jde i složitě :D
Avatar
Odpovídá na oggymotslp
Michal Struna:

Šlo by to třeba tak, že by si všem checkboxům dal stejné name (např. vybrane[]). Důležité jsou ty závorky. Ty totiž říkají, že ve výsledném $_POST můžou být hodnoty i více než jednoho checkboxu.

<form method="POST">
   <table>

<?php
$clanky = [...];
foreach ($clanky as $clanek) {
   echo '<tr><td>' . $clanek['id'] . '</td><td>' . $clanek['username'] . '</td><td>' . $clanek['jmeno'] . ' ' . $clanek['prijmeni'] . '</td><td>' . $clanek['token'] . '</td><td><input name="vybrane[]" value="' . $clanek['token'] . '" type="checkbox"></td></tr>';
}
?>

   </table>
   <input type="submit" value="Filtrovat">
</form>

<?php
// Pokud byl formulář odeslán, vypíšou se tokeny všech vybraných položek oddělené středníkem.
if (isset($_POST['vybrane'])) {
   echo implode(';', $_POST['vybrane']);
}
?>
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět 4.10.2016 16:16
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 5 zpráv z 5.