Zjistit, která políčka byly vybrány ve formě v PHP

hlasů
1

Mám formulář s několika políček. Když jsem se předložit ji na jinou stránku php, jsem přemýšlel: Jak mohu zjistit, které z nich jsou kontrolovány, aniž by zastavovaly isset na každé jméno checkbox? (Pokud existuje způsob). Pokud dám každému z políček stejné jméno, pak je vrácena pouze poslední zaškrtnuto.

Díky,
Michael

Položena 16/08/2009 v 23:12
zdroj uživatelem
V jiných jazycích...                            


2 odpovědí

hlasů
5

Vtípek PHP vyžaduje, aby ovládací prvky formuláře končí své jméno s postavami []v pořadí pro více než jeden z nich je třeba uznat.

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
   "http://www.w3.org/TR/html4/strict.dtd">
   <title>Demo</title>

<form action="cb.php">
<div>
    <input type="checkbox" name="animals[]" value="dog" id="dog"> 
    <label for="dog">dog</label>
</div>
<div>
    <input type="checkbox" name="animals[]" value="cat" id="cat"> 
    <label for="cat">cat</label>
</div>
<div>
    <input type="checkbox" name="animals[]" value="rabbit" id="rabbit"> 
    <label for="rabbit">rabbit</label>
</div>
<div>
    <input type="checkbox" name="animals[]" value="hampster" id="hampster"> 
    <label for="hampster">hampster</label>
</div>
<div><input type="submit"></div>
</form>
<?php
if ($_GET['animals']) {
?>
<ul>
<?php
foreach ($_GET['animals'] as $animal) {
?>
<li><?php print htmlspecialchars($animal); ?></li>
<?php
}
?>
</ul>
<?php
}
?>
Odpovězeno 16/08/2009 v 23:15
zdroj uživatelem

hlasů
1

Použít název pole pro všechny políček ve stejné skupině, např name = „mycheckboxes []“. Tímto způsobem budete mít celou řadu, která obsahuje seznam vybraných políček v php kódu

Odpovězeno 16/08/2009 v 23:15
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more