체크를 한 것들을 선택하고 그 값을 DB에 담긴 것을 꺼내어 선택된 것을 체크되게 해주는 것입니다.
실제 업무에도 많이 쓰이기도 하고 또한 CSS나 웹표준으로도 변환해서 이용하시면 될 듯합니다..
function caeSubmit(f) { msgChecked(f); if (count < 1) { alert("선택하신 제품구분이 없습니다.\n제품구분을 선택하여 주시기 바랍니다."); f.bunya1[0].focus(); f.bunya1[0].checked==true; return false; } f.target="deffrm"; f.method="post"; f.action="act.php?mode=caeSave"; f.submit(); } function msgChecked(f) { var i=0; count = 0; CheckedItems1=""; while (i < f.elements.length) { if ((f.elements[i].name == 'bunya1') && (f.elements[i].checked)) { CheckedItems1 += f.elements[i].value + "*"; f.chkitem1.value=CheckedItems1.substr(0,CheckedItems1.length-1); count++; } i++; } } [php프로그램 부분] $result=db_query("SELECT * FROM CatalGues WHERE id=$_GET[id]"); $row=db_fetch_assoc($result); <form name="form2" enctype="multipart/form-data" onSubmit="return caeSubmit(this);"> <table width="100%" border="0" cellspacing="0" cellpadding="0" align="center"> <? $chkcnt=6; $bunya_item=array("자동차","항공","철도","선박","산업기계","중장비","농기계","전자","건설토목","기타"); $bunya = explode("*", $row["bunya1"]); for($i=0; $i<sizeof($bunya_item); $i++) { $cnt++; $na = intval( $cnt / $chkcnt); $first = ( $na * $chkcnt) + 1; $last = ( $na * $chkcnt) + $chkcnt; if ($cnt==$first) { ?> <tr> <? } $chk = 0; for($j=0; $j<sizeof($bunya); $j++) { if( $bunya[$j]==$bunya_item[$i]) { ?> <td><input type="checkbox" name="bunya1" value="<?=$bunya_item[$i]?>" checked onFocus="this.blur();"><font color="darkred"><?=$bunya_item[$i]?></font></td> <? $chk = 1; } } if($chk==0) { ?> <td><input type="checkbox" name="bunya1" value="<?=$bunya_item[$i]?>" onFocus="this.blur();"><?=$bunya_item[$i]?></td> <? } if ($cnt==$last) { ?> </tr> <? } } ?> </table> <input type="hidden" name="chkitem1"> </form>