[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: checkbox
aleks3130
Не могли бы вы мне дать простой пример.
Как сдалать при динамических "checkbox"

что бы принажатии на кнопку выводились значения помеченных элементов checkbox.

Заранее спасибо.




Спустя 1 час, 4 минуты, 29 секунд (5.12.2009 - 14:22) Ka4_0k написал(а):
Омг О_О Народу уже вообще влом думать....
1.php

<form name="skljdfaskdlf" action="1.php" method="post">
<
input type="checkbox" name="ch_1" value="123123" /><br />
<
input type="checkbox" name="ch_2" value="312312" /><br />
<
input type="submit" value="Отправить" name="submit_form" />
</
form>
<?php
if(isset($_POST["submit_form"])) {
if(isset($_POST["ch_1"]))
echo $_POST["ch_1"];
if(isset($_POST["ch_2"]))
echo $_POST["ch_2"];
}

Спустя 1 час, 36 минут, 26 секунд (5.12.2009 - 15:59) Guest написал(а):
А как сделать тоже самое только при динамическом добавлении елементов
checkbox?

Спустя 16 минут, 4 секунды (5.12.2009 - 16:15) Guest написал(а):
<form name="skljdfaskdlf" action="index.php" method="post">
<?
$i = 1;
while ($i <= 10)
{
echo "<input type=\"checkbox\" name=\"ch_$i\" value=\"$i\" />\n";
echo $i; echo "<br />\n";
$i++;
}
?>

<input type="submit" value="Отправить" name="submit_form" />
</form>

<?
if(isset($_POST["submit_form"]))
{
$i = 1;
while ($i <= 10)
{
if(isset($_POST["ch_2"]))
echo $_POST["ch_2"];
$i++;
}

}

Не знаю как тут поступить с синтаксисом что бы работало динамически.
Подскажите если знаете.

Спустя 1 минута, 36 секунд (5.12.2009 - 16:17) Guest написал(а):
Где выделено в этом месте не знаю как написать.
пробовал так ch_$i и "ch_"$i и 'ch_'$i и ещё куча вариантов но не получается

Спустя 17 минут, 17 секунд (5.12.2009 - 16:34) Ka4_0k написал(а):
Сделай все имена чекбосов массивом. Например:
<input type="checkbox" name="ch[]" value="123123" />
А потом в обработчике:

if(isset($_POST["ch"]) && is_array($_POST["ch"]))
foreach($_POST["ch"] as $currentCheckbox) {
//действия над каждым чекбоксом.
}

Спустя 19 минут, 51 секунда (5.12.2009 - 16:54) twin написал(а):
is_array($_POST["ch"])
лучше заменить на
count($_POST["ch"])

Спустя 4 минуты, 9 секунд (5.12.2009 - 16:58) Ka4_0k написал(а):
Цитата (twin @ 5.12.2009 - 13:54)
is_array($_POST["ch"])
лучше заменить на
count($_POST["ch"])

А вдруг прийдёт false count не ругнётся? Просто если даже массив пустой, то foreach возникать не начнёт....

Спустя 1 час, 47 минут, 28 секунд (5.12.2009 - 18:45) Guest написал(а):
<form name="skljdfaskdlf" action="index.php" method="post">
<?
$i = 1;
while ($i <= 10)
{ $ch[$i]=$i;
echo "<input type=\"checkbox\" name=\"$ch[$i]\" value=\"$i\" />\n";
echo $i; echo "<br />\n";
$i++;
}
?>

<input type="submit" value="Отправить" name="submit_form" />
</form>

<?
if(isset($_POST["submit_form"]))
{
$i = 1;
while ($i <= 10)
{
if(isset($_POST["$ch[$i]"]) && is_array($_POST["$ch[$i]"]))
foreach($_POST["$ch[$i]"] as $currentCheckbox)
{
echo $_POST["$ch[$i]"];

}
$i++;
}

}

?>

У меня ничего не получается

Я так понимаю цифра именем в <input type=\"checkbox\" name=\"$ch[$i]\" value=\"$i\" /> быть не может. Как в переди добавить какую нибудь букву?

пробовал разные варианты. например:
name=\"'A'$ch[$i]\"

Подскажите как добавить букву к переменной имени?

Спустя 41 секунда (5.12.2009 - 18:46) Guest написал(а):
Вообще проблемы с синтаксисом PHP

Спустя 13 минут, 52 секунды (5.12.2009 - 19:00) Guest написал(а):
Как заполнить динамический в масив цикле не цифрами
а буквой+цифра. Что бы этот массив можно было бы использовать как имя

Спустя 8 минут, 44 секунды (5.12.2009 - 19:09) Ka4_0k написал(а):
Проблемы не с синтаксисом, а с неумением пользоваться кнопками bb кодов!!!!
Да просто не надо делать чепухи:

<form name="skljdfaskdlf" action="index.php" method="post">
<?php
for($i=1;$i <= 10;$i++) {
$ch[$i]=$i;
echo "<input type='checkbox' name='ch[$i]' value='$i' />\n";
echo $i."<br />";
}
?>
<input type="submit" value="Отправить" name="submit_form" />
</
form>


Спустя 1 час, 36 минут, 6 секунд (5.12.2009 - 20:45) Guest написал(а):
ch[$i] это число а разве Name может быть числом?

Спустя 8 минут, 23 секунды (5.12.2009 - 20:53) Guest написал(а):
Что бы лишних разговоров не было не могли бы вы дать мне полный код сразу а не объяснять частями.
Как сдалать при динамических "checkbox"

что бы принажатии на кнопку выводились значения помеченных элементов checkbox.

Заранее спасибо.

То что у меня не работает:
<form name="skljdfaskdlf" action="index.php" method="post">
<?
$i = 1;
while ($i <= 10)
{
$ch[$i]=$i;
echo "<input type=\"checkbox\" name=\"$ch[$i]\" value=\"$i\" /> <br />\n";
$i++;
}
?>

<input type="submit" value="Отправить" name="submit_form" />
</form>

<?
if(isset($_POST["submit_form"]))
{
$i = 1;
while ($i <= 10)
{
if(isset($_POST["$ch[$i]"]))
echo $_POST["$ch[$i]"];
$i++;
}

}

?>



Спустя 1 час, 55 минут, 1 секунда (5.12.2009 - 22:48) Ka4_0k написал(а):

<form name="checkbox_testing_form" action="1.php" method="post">
<?php
for($i=1;$i <= 10;$i++) {
$ch[$i]=$i;
echo "<input type='checkbox' name='ch[$i]' value='$i' />\n";
echo $i."<br />";
}
?>
<input type="submit" value="Отправить" name="submit_form" />
</
form>

<?php
if(isset($_POST["submit_form"])) {
for($i=1;$i <= 10;$i++) {
if(isset($_POST["ch"][$i]))
echo $_POST["ch"][$i]."<br />";
}
}

?>

Разбирайся.

Спустя 12 часов, 32 минуты, 18 секунд (6.12.2009 - 11:20) Guest написал(а):
Спасибо всё заработало ))))
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.