sql쿼리 출력하는 방법 질문드립니다
본문
이전글에 sql 작성에 대한 질문글을 올렸었는데 ( http://sir.kr/qa/121366 )
sql 질의는 작성해서 phpmyadmin에서 테스트를 완료했습니다 (이전꺼는 잘못된부분 수정했습니다)
그리고 완성후에 그누보드에 출력을 해야하는데
출력을 어떻게 해야할지 모르겠습니다.
head파일의 메인메뉴 출력에서 쓰이는 sql을 복사해서 참고하여 수정해봤는데
아무것도 출력이 되지않네요
SELECT *
FROM `g5_게시판A테이블` o1
WHERE o1.WR_10=some(SELECT WR_15
FROM `게시판B테이블` am
WHERE am.WR_2=am.WR_4)
↑SQL쿼리에서 돌린 질의입니다
<?php
$sql33 = "SELECT *
FROM `게시판A테이블` o1
WHERE o1.WR_10=some(SELECT WR_15
FROM `게시판B테이블` am
WHERE am.WR_2=am.WR_4)";
$result33 = sql_query($sql33);
for ($k=0; $row33=sql_fetch_array($result33); $k++) {
if($k == 0)
echo '<ul class="gnb_2dul">'.PHP_EOL;
?>
<li class="gnb_2dli"><a href="<?php echo $row33['wr_1']; ?>" target="_<?php echo $row33['wr_2']; ?>" class="gnb_2da"><?php echo $row33['wr_10'] ?></a></li>
<?php
}
if($k > 0)
echo '</ul>'.PHP_EOL;
?>
</li>
<?php
if ($i == 0) { ?>
<li id="gnb_empty">메뉴 준비 중입니다.<?php if ($is_admin) { ?> <br><a href="<?php echo G5_ADMIN_URL; ?>/menu_list.php">관리자모드 > 환경설정 > 메뉴설정</a>에서 설정하실 수 있습니다.<?php } ?></li>
<?php } ?>
↑ head파일을 보고 약간 수정한 코드입니다
<?php
$sql = " select *
from {$g5['menu_table']}
where me_use = '1'
and length(me_code) = '2'
order by me_order, me_id ";
$result = sql_query($sql, false);
$gnb_zindex = 999; // gnb_1dli z-index 값 설정용
for ($i=0; $row=sql_fetch_array($result); $i++) {
?>
<li class="gnb_1dli" style="z-index:<?php echo $gnb_zindex--; ?>">
<a href="<?php echo $row['me_link']; ?>" target="_<?php echo $row['me_target']; ?>" class="gnb_1da"><?php echo $row['me_name'] ?></a>
<?php
$sql2 = " select *
from {$g5['menu_table']}
where me_use = '1'
and length(me_code) = '4'
and substring(me_code, 1, 2) = '{$row['me_code']}'
order by me_order, me_id ";
$result2 = sql_query($sql2);
for ($k=0; $row2=sql_fetch_array($result2); $k++) {
if($k == 0)
echo '<ul class="gnb_2dul">'.PHP_EOL;
?>
<li class="gnb_2dli"><a href="<?php echo $row2['me_link']; ?>" target="_<?php echo $row2['me_target']; ?>" class="gnb_2da"><?php echo $row2['me_name'] ?></a></li>
<?php
}
if($k > 0)
echo '</ul>'.PHP_EOL;
?>
</li>
<?php
}
if ($i == 0) { ?>
<li id="gnb_empty">메뉴 준비 중입니다.<?php if ($is_admin) { ?> <br><a href="<?php echo G5_ADMIN_URL; ?>/menu_list.php">관리자모드 > 환경설정 > 메뉴설정</a>에서 설정하실 수 있습니다.<?php } ?></li>
<?php } ?>
↑head파일의 원래 코드입니다
B게시판의 여분필드 2와 4를 비교하여 값이 같으면
해당 글의 여분필드 15를 A게시판의 여분필드 10과 비교하고 값이 같다면
해당 A게시판의 글 여분필드 1~5까지를 출력하려고 합니다
sql 질의로 해보니 셀렉트로 여러개출력하는건 간단하게 ,로 되던데 내용 자체가 안나오니 잘 모르겠네요..
혹시 아시는분 계시다면 가르침좀 부탁드립니다
!-->!-->!-->
답변 2
해결했습니다..
<?php
$sql = "SELECT *\n"
. " FROM `A` o1\n"
. " WHERE o1.WR_10=some(SELECT WR_15\n"
. " FROM `B` am \n"
. " WHERE am.WR_4=(SELECT $list[$i]['mb_id']
FROM q5_member)) LIMIT 0, 30 ";
$result = sql_query($sql, false);
for ($i=0; $row=sql_fetch_array($result); $i++)
{
echo $row['wr_1'];
echo $row['wr_2'];
echo $row['wr_10']
?>
<?php
}
?>
계속 시행착오를 반복하다가 이런식으로 수정했더니 출력이 되네요
여기서 비교할때 접속한 자신의 아이디를 비교하려는데 혹시 아시는분 안계실까요..
!-->
접속아이디 비교도 수정완료했습니다....
http://www.opencode.co.kr/bbs/board.php?bo_table=g4_100&wr_id=22
여기 글 보고 조금씩 수정하면서 해봤더니 됐습니다
답변을 작성하시기 전에 로그인 해주세요.