Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem HTML form to PHP field

Názvy checkboxov si nejako očísluj (c0, c1, c2, ...). Na strane servera prebehni pole $_POST a vytvor si pole s výsledkami:

$checked = array();
foreach ($_POST as $key => $value)
  if ($key[0] === 'c') {
    $part = substr($key, 1);
    if (is_numeric($part))
      $checked[(int)$part] = TRUE;
  }
Ak chceš pracovať s poľom s pevným počtom prvkov, použi SplFixedArray (ak máš k dispozícii verziu 5.3.0 a vyššiu). Ak počet checbkoxov nepoznáš implicitne, pošli si ho v input type=hidden. Je rozumné ohraničiť počet nejakým limitom zhora, nech ti tam nepošle nejaký záškodník niečo zbytočne veľké.

Ako bolo spomenuté, pri veľkých počtoch vstupných prvkov si treba dať pozor na limity, ako je max_input_vars od PHP 5.3.9 (prípadne parsovať POST ručne z file_get_contents("php://input")) a ďalšie (maximálna veľkosť POSTu a pod.).

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny