채택완료

고수님분들 질문드립니다. 체크박스에 항상 체크...

<?php
$wr_9_arr = array( // 배열 설정

   "품명1" => "품명1",
   "품명1" => "품명1",
   "품명2" => "품명2",
   "품명3" => "품명3",
);
?>
<li class="bo_w_tit">
       <div class="wli_tit">품목들</div>
       <div class="wli_cnt wli_pickup">
          <?
         $wr_9 = explode("|", $write['wr_9']);
         foreach($wr_9_arr as $key => $val) {
            $chk = in_array($key, $wr_9) ? " checked" : ""; 
            echo "<label><input type='checkbox' name='wr_9[]' value='".$key."'".$chk.">".$val."</label> "; 
         }
      ?>

 

 

이런 형태입니다.

품명1 에는 항상 체크가 미리 되어 있게 하려면 어떻게 해야하나요??@.@

도와주세요.

|

답변 3개 / 댓글 2개

채택된 답변
+20 포인트

Copy
<?
fore_i = 0;
$wr_9 = explode("|", $write['wr_9']);
foreach($wr_9_arr as $key => $val) {
    $chk = in_array($key, $wr_9) ? " checked" : ""; 
    if ($for_i == 0) {
        $chk = " checked" ; 
    }
    echo "<label><input type='checkbox' name='wr_9[]' value='".$key."'".$chk.">".$val."</label> "; 
    fore_i++;
}
?>

Copy
$chk = ""; <====== 이부분 추가

$chk = in_array($key,$wr_9) ? " checked " : "";

아래쪽에 넣으시면 되겠네요

Copy
if(!$chk && $key == "품명1) {

    $chk = " checked ";

}

이렇게 하시면 $chk에 값에 체크 된 값이 없고 $key의 값이 품명1 이면 값을 넣게끔 해주는 거니까요.

if($key == "품명1") {

   $chk = " checked";

} else {

   $chk = in_array($key, $wr_9) ? " checked" : "";

}

답변에 대한 댓글 2개

죄송합니다.
적용이 안되네요..ㅠㅠ
foreach($wr_9_arr as $key => $val) {
if($key == "품명1") {
$chk = " checked";
} else {
$chk = in_array($key, $wr_9) ? " checked" : "";
}
여기에 넣으신 거 맞죠?
혹시 모르니 echo $key 했을 때 품명1이 찍혀 나오나요?

답변을 작성하려면 로그인이 필요합니다.