sql로 뽑아낸 배열 Array 을 어떻게 써야하나요
본문
안녕하세요 sql은 어찌어찌 원하는거 뽑을정도로는 이해했는데
정작 이걸 쓸줄을 몰라서 문의합니다.
궁금한것은 2가지입니다.
1. mb_3 여분필드에 id들을 추가,삭제가 가능한 페이지를 만들어
--> preg_match_all('/ㄴ(.*?)ㄱ/', $mb['mb_3'], $test);
프레그매치올을 통해 저장된 id들을 분리해서 뽑는것까진 성공했습니다.
그래서 print_r( $test[1] ); 을 해서 보면
--> Array ( [0] => test [1] => test1 [2] => sell1 )
이런식으로 원하는 그림이 나오는데
이제 이걸 어떻게 사용해야할지 사용법을 모르겠습니다.
echo $test[1]; 하면 그냥 array()로만 뜨고....
원하는것은 셀렉트 옵션 (ex) test1,test2,test,sell1,sell2,sell3 ...)
중에 $test[1]이 갖고있는 목록을 비교해서 있는것만 출력해주는 것입니다.
2. 이것도 왠지 비슷한 맥락일것같아 같이 질문합니다
뷰코멘트 화면에서 댓글중에 wr_3에 1이 적혀있는 목록(글당 무조건 1개입니다)을 뽑아와서
$sql = " select * from $write_table where wr_parent = '$wr_id' and wr_3 = '1' ";
$result = sql_query($sql);
프린트해보면 sql문으로 선택은 잘 된것 같은데 문제는 이것 역시 어떻게 써야할지 모르겠습니다
이 행의 mb_id를 뽑고싶어서 $result['mb_id'] 나 $result[0]['mb_id'] 를 echo하면 그냥 사이트가 먹히지 않습니다...
어떻게 해야 뽑아서 사용이 가능할까요?
답변 2
1.
foreach($test[1] as $key => $val) {
echo $val;
}
2.
$row = sql_fetch($sql);
echo $row['mb_id'];
그래서 print_r( $test[1] ); 을 해서 보면
--> Array ( [0] => test [1] => test1 [2] => sell1 )
echo $test[1]; 하면 그냥 array()로만 뜨고....
==
echo $test[1][0];
이런 식으로 쓸 수 있습니다.