Olá,
Segue o Html!
$br=1;
$chk=0;
while(!$rst->EOF)
{
$cod_setor = str_replace(",",".",$rst->fields[0]);
$cod_sistema = str_replace(",",".",$rst->fields[3]);
if ($rst->fields[3]=='0,0')
{
$chk++;
if($br!=1){ ?>
<br />
<? } ?>
<label class="setor"><input class="setor" name="permsub[]" id="setor<? echo $chk; ?>" type="checkbox" value="<? echo $cod_setor.",".$cod_sistema; ?>" /><? echo $rst->fields[1]; ?></label>
<br />
<? $br=0;
} else {
?>
<label><input class="subsetor" name="permsub[]" id="permsub<? echo $chk; ?>" type="checkbox" value="<? echo $cod_setor.",".$cod_sistema; ?>"/><? echo $rst->fields[2]; ?>
</label>
<?
}
$rst->MoveNext();
} Primeiro listo o setor e todos os subsetores, depois o segundo setor e os seus subsetores........... Pelo name do input estou pegando o chexkbox selecionados, para trabalhar com a seleção pai/filho utilizo o id do input. No caso os setores estão nomeados como: setor1, permsub1, permsub1, permsub1 setor2, permsub2, permsub2, permsub2