Непонятка с чекбоксом.

так номер страницы нам в любом случае надо передавать, чтобы редиректнуть туда где были ;)

можно, конечно, передавать и все хидденом, но вот такой способ
<input type="hidden" name="checked[0]" value="">
<input type="checkbox" name="checked[0]" value="1" '.$checked_m.'>
вызывает большие сомнения в надежности. я вот совсем не уверен, в каком порядке произвольно взятый браузер такое передаст, и передаст ли вообще.
 
капец, чем вам вариант с радио батонами не подходит ? для того они и сделаны.

пс. помоему зубы через жопу вырываете =)
 
PHP:
если (POST) {
   если ($оригинальный_список = список_сохранённый_на_сервере()) {
      $новый_список = пустой();
      по_списку($оригинальный_cписок => $элемент) {
         $новый_список[$элемент] = (есть_ли_в_POST?($элемент));
      }
      если ($оригинальный_список != $новый_список) {
       сохранить_список($новый_список);
     }
     очистить_сохранённый_ранее_список();
   }
    перенаправить_после_POST();
}
$список = получить_список();
сохранить_на_сервере($список);
отобразить_список($список);
Избавляемся от кучи побочных эффектов, имеем полный контроль над данными, не выдумываем идиотские способы почёсывания левой рукой правого уха.

Never, ever, trust your users!
 
fixxxer, так можно один хидден на все сделать

Армян, положа руку на сердце, чекбокс в сто раз более наглядный, чем радио. в радиокнопках глаза начинают разъезжаться, если их больше трех. а чекбокс нормально видно - отмечен пункт или нет

MiRacLe, сессии, имхо, слишком тяжелая артиллерия для этого случая
 
*****
Есть еще вариант с селектом с двумя опшонами "On", "Off"
Вполне наглядно и без извращений

-~{}~ 03.10.08 21:35:

если их больше трех
В данной задаче по два радио на каждый пункт. Или ты имел введу общее кол-во ?
 
у checkbox 2 состояния - да/нет
у radio - да/нет/не выбран вообще
 
у двух радио батонов тоже - либо 1 либо 2ой выбран! Или я чтото упускаю? :)
 
Мои пять копеек:

<form action='' method='post'>
<input onClick="set_check(this)" type="checkbox" value="" /> 1 <span>Первый чекбокс</span><br />
<input type="hidden" name="checked[1]" value="false" />

<input onClick="set_check(this)" type="checkbox" value="" /> 2<br />
<input type="hidden" name="checked[2]" value="false" />

<input onClick="set_check(this)" type="checkbox" value="" /> 3<br />
<input type="hidden" name="checked[3]" value="false" />

<input type='submit' value='Ok' />
</form>

<script>
PHP:
function set_check(obj)
{
        check = obj.checked;
        obj = obj.nextSibling;
        while(obj.nodeName != 'INPUT')
        {
                obj = obj.nextSibling;
        }
        obj.value = check;
}
</script>
PHP:
<?
print_r($_POST); //Array ( [checked] => Array ( [1] => true [2] => false [3] => true ) ) 
?>

Генерировать на сервере
PHP:
$tr_fl = ($checked_m == "checked") ? "true" : "false"; 

<input onClick='set_check(this)' type='checkbox' value='' ".$checked_m."  /> Текст<br />
<input type='hidden' name='checked[".$row->post_id."]' value='".$tr_fl."' />
 
Сверху