|
|
|
| Здравствуйте!
Я вычитал в одной книге по HTML, что если сгруппировать элементы формы checkbox по имени то в результате передаваемым значение будет строка разделенных запятыми значение параметра value всех установленых флажков.
Т.е, если в форме у меня идет:
<input type="checkbox" name="nm" value="1">
<input type="checkbox" name="nm" value="2">
<input type="checkbox" name="nm" value="3">
<input type="checkbox" name="nm" value="4">
|
а обработчик такой:
<?
$nm = $_POST['nm'];
echo $nm;
?>
|
то при выбранных 1, 3 и 4 должно выводиться: 1, 3, 4,
а выводится 4. Т.е значения перекрываются.
В чем дело?
Помогите, пжалстя. | |
|
|
|
|
|
|
|
для: Expier
(21.07.2006 в 17:02)
| |
<input type="checkbox" name="nm[]" value="1">
<input type="checkbox" name="nm[]" value="2">
<input type="checkbox" name="nm[]" value="3">
<input type="checkbox" name="nm[]" value="4">
|
нужны [ ] в имени - указатель массива и передавать массив через POST надо не как строку | |
|
|
|
|
|
|
|
для: elenaki
(21.07.2006 в 17:05)
| | а как тогда обработчик изменить?
$nm[] = $_post['nm[]'];
print_r($nm);
|
такой код не работает | |
|
|
|
|
|
|
|
для: Expier
(21.07.2006 в 17:13)
| | Массив $_POST['nm'] будет содержать все выбранные значения
Кстати, массив, содержащий POST-данные, назывется $_POST, а не $_post | |
|
|
|
|
|
|
|
для: ec_stasis
(23.07.2006 в 01:39)
| |
foreach ($_POST['nm'] as $value)
{
echo $value;
}
|
| |
|
|
|
|
|
|
|
для: technic611
(23.07.2006 в 15:04)
| | Спасибо, уже понял!
к стати, можно еще так:
<?
$nm = $_POST['nm'];
print_r($nm)
?>
|
| |
|
|
|
|
|
|
|
для: Expier
(24.07.2006 в 18:13)
| | А какой код обработчика будет если в value латинские сымволы?
<input type="checkbox" name="nm[]" value="root">
<input type="checkbox" name="nm[]" value="name">
<input type="checkbox" name="nm[]" value="user">
<input type="checkbox" name="nm[]" value="login">
|
| |
|
|
|