checkbox 질문 드립니다 선생님 채택완료

Copy
<?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_s = $result4['product_index'];								$sql5 = "select * from {$g5['g5_pg_table']} where p_idx = '$p_idx_s'";				$result5 = sql_query($sql5);				$sql2 = " select * from {$g5['g5_glass_table']} where 1";				$result2 = sql_query($sql2);								//print_r($result5);				for ($c=0;$row5=sql_fetch_array($result5);$c++){					$re5v[] = $row5['g_idx'];				}					for ($d=0; $row2 = sql_fetch_array($result2); $d++) {						if($re5v[$d]['g_idx'] == $row2['glass_index']){ $checked = 'checked'; } else { $checked = ''; };						//print_r2 ($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					}								?>

 

위와 같이 checkbox 를 화면에 뿌려주고 있습니다.

제가 안되고 있는 부분이 쿼리를 불러와서 그 쿼리의 값과 다른 쿼리에서 가져온 값

두개를 비교해서 같은 값이면 check 되도록 같은 값이 없으면 check 안되도록 하고자 합니다.

배열로 값은 다 들고 오는데 그 배열을 서로 매치를 시키지를 못하겠습니다.

이해를 돕기 위해 $re5v[$d] = 2와 4를  $row2['glass_index'] = 1,2,3,4,5 이렇게 5개의 값을 가지고 있습니다.$re5v[$d] 의 값과 $row2['glass_index'] 의 값이 동일한 2,4 일때만 check 를 하고 싶습니다.

설명을 좀 해주시면 감사하겠습니다.

부탁드립니다.

답변 2개

채택된 답변
+20 포인트

체크하는 조건문 부분을

if($re5v[$d]['g_idx'] == $row2['glass_index'])  


if(in_array($row2['glass_index'],$re5v)) 식으로 하면 될것 같은데요.

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

if(in_array($row2['glass_index'],$re5v)) { $checked = 'checked'; } else { $checked = ''; };
으어어어어어 감사합니다 정말 감사합니다
몇시간을 붙들고 있던게 해결 됐습니다....
정말 감사합니다.

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

질문을 확실히 이해했는지는 모르겠지만...

Copy
$arr_a = array(2,4);$arr_b = array(4,2);sort($arr_a);sort($arr_b);//값이 인덱스와 상관없이 존재하기만 하면 된다면.if($arr_a == $arr_b) echo "같습니다.";else echo "같지 않습니다.";
 
로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

인덱스 값과 같은거를 가져와야 합니다.ㅜㅜ

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

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

로그인
🐛 버그신고