mysql php checkbox

spl

Новичок
mysql php checkbox

Есть ассоциативный массив вида:
PHP:
<? ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {?>
table
data(checkbox)
/table
<?
}
?>
Из массива извлекается 10 записей.
Нужно чтобы выделеные скажем 5 записей, были переданы в другую php'шку для дальнейшей работы
Проблема заключается в том, что я не могу понять как в этом случае работать с формами, и чекбоксами.
Подскажите плиз.
Спасибо.
 

spl

Новичок
Хм. причём тут ман по html?
Если оно в цикле отдаёт все записи которые нашло?
А я туда к ним прикручиваю чекбокс
<input type=checkbox name="check[]" value=1>
Следовательно name и value будут одинковые.
 

spl

Новичок
Я имел ввиду то, что оно будут одинаковым, для всех извлечённых данных т.е.:
PHP:
    <td width="6%"><span class="text"><a href="edit.php?act=rem&id=<? echo $row["id"]; ?>">Удалить</a></span></td>
    <td width="3%"> 
<form name="a4" method="post" action="a4.php"> 
	        <input type=checkbox name="check[]" value=<? echo $row["id"];?> >
       </td>
  </tr>
</table>
<?
}
?>
<input type="submit" name="Submit" value="Submit">
</form>
Это есть кусок конца таблицы и массива.
Если mysql запросом выгребает 10 значений, значит всё это будет 10 раз повтороено, и 10 раз будет <input type=checkbox name="check[]" value=<? echo $row["id"];?> >
Вот как это побороть?
Основываясь на вышеприведённом коде?
Где, и что не так я делаю?
 

Фанат

oncle terrible
Команда форума
Тьфу блин, дошло. Совсем ты запутал.
Короче.
А нафига ты тогда в value пишешь id строки?
Нафига тебе вообще id?
ты больше одной записи редактируешь?
Влюбом случае, в valut надо писать признак ПОЛЯ.
ну я не знаю - хоть порядковый номер этого чекбокса.
 

spl

Новичок
Ну наконец-то:) :cool: :D
Мне их надо не редактировать, в смысле те которые отмечены, а plaintext'ом, выводить.
Чтобы потом печатать.
Вот я ж и спрашиваю how?:rolleyes:
А как указывать этот самый признак поля?
А порядковый номер чекбокса и должен быть айди.
 

akxxiv

Новичок
Мда. А до меня не очень.
Если ты из массива цыклом выводишь данныt, то id, скорее всего, у тебя разные... Одинаковые лишь имена чекбоксов (хотя я могу ошибаться). В это случае, сколько бы ты не отмечал чекбоксов с одинаковыми именами, будет засчитан лишь последний. Я обычно делал что-то типа
PHP:
<input type=checkbox name="check[<? echo $row["id"];?> ]" value=<? echo $row["id"];?> >
А потом уже в другой пхпшке работал $_POST['сheck'], как с обычным массивом.
 

spl

Новичок
PHP:
<? if (isset($_POST["submit1"])) {
echo 'Кнопка клёцнута:)<br>';
for ($id=0; $id<count($_POST["check"]); $id++); 
{
$id = ($_POST["check"][$id]);
echo $id;
//$query 
//etc source
}

//etc source ?>
Вот код, который вышел в принимающей php'шке, но оно отказывается ловить id чекбоксов которые были переданы, и дальше соответственно выполнять запрос.
В чём тут ошибка?
 

Sergy

Guest
Предлагаю тебе такой вот вариант:
<input type="checkbox" name="c[<?=$id?>]" value="ON">
<input type="hidden" name="cr[]" value="<?=$id?>">
<input type="hidden" name="col_checkbox" value="<?=$col_checkbox?>">
Прием:
for ($i=0; $i<= $_POST['col_checkbox']-1; $i++)
if (@$c[$i]=="ON") {
echo 'id картинки ' .$cr[$i];
}
 

spl

Новичок
Дык там не айди,а в БД хранящаяся текстовая инфа, мне ту которая чекбоксами помечена, нужно передать в другую php шку чтобы подготовить на печать, брать нужно может 1, может 10, может 10000 значений:)
Но спасибо всё равно попробую, хотя думаю не покатит.
////Кхм кхм, не покатило.
 

akxxiv

Новичок
Если я праувильно понял, то в базе хранится инфа, над оторой надо произвести действия.
Это инфа пронумерована или нет, т.е. есть уникальные id ?
Если да, то ты в первой пхпшки выводишь данные с прикрепленными чекбоксами, имена которых имеют вид "Check[<?=$id?>]" ? если нет, то зря.:)
Далее ты во второй пхпшки пытаешся их выудить черец цикл for(...), но если у тебя id были числовыми, то массив будет иметь элементов больше, чем count($_POST["check"], поскольку айди воспринемаются как индексы. Короче используй foreach.
У меня работает.
 

spl

Новичок
Ну да, есть айди уникальные.:)
Вывожу, с прикреплёнными чекбоксами:)
Поделись примером, или куском.:D
 

akxxiv

Новичок
В первой пхпшке
PHP:
<table>
<form name="a4" method="post" action="a4.php"> 
<?while($row = mysql_fetch_array($result, MYSQL_ASSOC)){?> 
<tr>    
    <td><input type=checkbox name="check[<? echo $row["id"];?>]" value=<? echo $row["id"];?>></td>
	<td><? echo $row["name_of_inf"];?></td> 
</tr>
<? } ?> 
<input type="submit" name="Submit" value="Submit"> 
</form>
</table>
Во второй пхпшке

PHP:
<?  foreach ($_POST['check'] as $key => $id) 
{    
   echo $id."<br>";  }  
?>
 
Сверху