checkbox 한번 더 질문 드려요 ㅠㅠ 으어어 선생님 ~~
본문
<?php
$sql4 = "select product_index from {$g5['g5_product_table']} where p_id = '$p_id' ";
$res4 = sql_query($sql4);
$result4 = sql_fetch_array($res4);
$p_idx_se = $result4['product_index'];
$p_idx_s = $row['product_index'];
//print_r2($p_idx_s);
$sql5 = "select * from {$g5['g5_pg_table']} where p_idx = '$p_idx_s' order by g_idx asc";
$result5 = sql_query($sql5);
//print_r2($result5);
$sql2 = " select * from {$g5['g5_glass_table']} where 1";
$result2 = sql_query($sql2);
for ($c=0;$row5=sql_fetch_array($result5);$c++){
$re5v[] = $row5['g_idx'];
//print_r2($row5['g_idx']);
}
for ($d=0; $row2 = sql_fetch_array($result2); $d++) {
if(in_array($row2['glass_index'],$re5v)){ $checked = 'checked'; } else { $checked = ''; };
//print_r2("상위 for문의 결과 === ".$re5v);
//print_r2($row2);
?>
<input type = "checkbox" id="select_g<?php $d;?>" name="select_g[]"<?php echo $checked; ?> class="select_g" value="<?php echo $row2['glass_index']; ?>" ><?php echo $row2['glass_nm']; ?>
<?php
}
?>
일전에 질문을 올렸을때 알려주신 방법으로
수정 폼 쪽에서는 정상적으로 다 작동이 되고 있습니다.
비슷한 방식이겠거니 하고
그 방식에 리스트 쪽으로 적용을 시킬려고 가져와서
약간의 소스 추가 하고 적용을 하니 제대로 나오지를 않습니다.
제일 늦게 들어간 값은 정상으로 나오고 그 밑으로 먼저 들어간 값들은
상위의 값들을 다 같이 체크를 하고 있습니다.
------------------------------------
A name ㅁ | 체크 | ㅁ | ㅁ | 체크
------------------------------------
B name ㅁ | 체크 | 체크 | ㅁ | 체크
------------------------------------
C name ㅁ | 체크 | 체크 | ㅁ | 체크
리스트가 저런 식으로 표현 되고 있는데
실제 값이 들어 있는건
A 는 2 번 5번 체크가 맞고
B 는 3번 체크
C 는 체크된게 없어야 합니다.
그런데 상위에 새로운 값이 들어오면 하위는 그 값을 전부 다 체크를 하게 표현 되고 있습니다.
리스트의 index값을 조회 해서 그 값을 가지는 index 에서
양쪽 값을 비교해서 같은 값이 있을때 체크를 시키는 방법으로 하는데요
말로 표현 하는거 보다
실제 적어놓은 소스를 보시는게 더 이해가 편하실듯 합니다.
한번 보시고 뭐가 문제인지 알려주시면 대단히 감사하겠습니다.
제발 부탁드립니다 ㅠㅠ
!-->답변 1
14 | |
15 | for ( $c =0; $row5 =sql_fetch_array( $result5 ); $c ++){ |
16 | $re5v [] = $row5 [ 'g_idx' ]; |
17 | //print_r2($row5['g_idx']); |
18 | } |
위 소스 바로 앞에 아래 한줄을 추가해 보세요.
unset($re5v);
답변을 작성하시기 전에 로그인 해주세요.