다른 게시판의 게시물 갯수 구하기

다른 게시판의 게시물 갯수 구하기

QA

다른 게시판의 게시물 갯수 구하기

본문

A라는 게시판에 B게시판의 게시물 갯수를 표현하고 싶은데요..


현재 구조는 

A게시판 리스트의 게시글 카테고리(ca_name)와 게시글 wr_id와 같은

B게시판 게시물 총 갯수를 구하고 싶습니다. 


A게시판의 게시글 ca_name='aaa'와 B게시판의 글들중 ca_name이 'aaa' 이면서

A게시판의 게시글 wr_id와 B게시판의 글들중 aaa라는 필드에 A게시판의 wr_id값과 같은 글의 갯수를 구하고 싶습니다.


코딩을 어찌해야할지 모르겠네요..


여러군데 찾아서..

<?php 

$row = sql_fetch(" select bo_count_write from {$g5['board_table']} where bo_table='B게시판 아이디'");

?>

(<?php echo $row['bo_count_write'];?>)

B게시판의 전체 글 갯수는 구했는데요..

위에서 언급한 두가지 조건에 맞는 글 갯수는 어찌 구해야 할까요?



이 질문에 댓글 쓰기 :

답변 2

말씀 하신 쿼리는 무조건 최대 값이 하나인거 아닌가요? ca_name과 wr_id같을려면요 wr_id는 고유값인데

갯수는 위 처럼 말고

select count(*) as cnt B테이블 where 조건 해보세요

음.. A게시판의 wr_id값을 가지고 있는 B게시판의 글들의 개수를 구하고 싶은건데.. 잘 안되네요..
현재 만들고 있는건..

교육강좌 등록(관리자만)을 하는 A게시판과
A게시판에 등록된 강좌 중 마음에 드는 강좌를 신청하는 B게시판으로 구성되어져 있습니다.

B게시판에서 A게시판에서 개설된 교육강좌 수강신청을 할 경우,
A게시판 해당 강좌의 wr_id값을 B게시판 수강신청폼에서 hidden값으로 여분필드인 'wr_1'에 입력하고 있습니다.

따라서, A게시판 리스트의 해당강좌 옆에 신청 인원이 카운팅 되게끔 하고 싶은겁니다..ㅜ,ㅜ;;

그러니까… 강좌개설게시판 A와 신청게시판 B 가 있는데,

개설게시판 쪽에 신청게시판 쪽의 신청 개수를 표시하려는 거죠?



$study = sql_fetch(" select count(*) as cnt from g5_write_B where wr_1 = '{$wr_id}'  Limit 1000");
echo  $study['cnt']

이렇게 하면 어떨까 싶은데요.
중간의 $wr_id 값은 리스트에서 호출할 땐 $list[$i][wr_id] , view.skin 에서 호출할 땐 $view[wr_id] 뭐… 이렇게 하면 되지 않을까요?
(해본게 아니라서 작동할런지는 모르겠습니다.)

저도 비슷한 기능을 게시판 두개로 구현하다가… 강좌 개설을 많이 해야 하는 상황에서는 관리를 어려워하시더군요. 강좌는 계속 개설되는데 신청게시판을 늘릴 수 없으니…
그래서 그 후 리뉴얼 할 때 강좌게시판스킨을 새로 만들어서 댓글 기능의 여분필드를 이용하는 식으로 개발을 다시 했더니 좀 편하더라구요.
신청자 관리는 view_comment.skin.php 에 wr_id 기준으로 엑셀 파일을 다운로드 받을 수 있게 수정했었습니다.

음..죄송한데.. 한가지만 더 물어보겠습니다.
B게시판의 bo_table='edu_a' 입니다.

그렇다면

$study = sql_fetch(" select count(*) as cnt from g5_write_edu_b where wr_1 = '{$wr_id}'  Limit 1000");

이렇게 되는걸까요?

그리고, 만약에 교육분류 카테고리를 조건으로 추가한다면

$study = sql_fetch(" select count(*) as cnt from g5_write_B where wr_1 = '{$wr_id}' and wr_2='{$ca_name}'  Limit 1000");

이렇게 쓸 수 있는건가요?

그러면 되지 않을까 싶은데요…
다만, 쿼리에서 $ca_name 은 list 에선 list[$i]['ca_name'] 같은 걸로 바꿔야할테죠. 그리고 for ($i=0; $i<count($list); $i++) 구문 아래에 있어야 할테고요. view 에선 $view['ca_name'] 으로 바꿔주고요.

근데, B게시판이 신청을 하는 게시판이죠? 그리고 이 소스가 필요한 곳은 강좌를 개설하는 A게시판이고요?
지금 하신 이야기는 B 게시판의 bo_table 이 edu_a 라는 건데…
그러면 A게시판에서 저 쿼리를 돌릴 때는 B게시판의 테이블명인 g5_write_edu_a 로 해야 하는 거 아닌가요?

아.. 네.. 그렇죠.. bo_table을 edu_a로 하는게 맞습니다.
하지만 아래소스처럼 해도... 카운트는 계속 0으로 나오네요..

<?php
$study = sql_fetch(" select count(*) as cnt from g5_write_edu_a where wr_1 = '{$wr_id}' and wr_2='{$ca_name}'  Limit 1000");
?>
<?php echo $study[cnt];?>

그런데, 아래 소스처럼 하면 카운팅 숫자가 나옵니다.
조건값을 주면 안나오구요... 그리고, 아래 같은 소스에는 조건을 어떻게 붙여줘야 할까요?
<?
$study=sql_fetch("select sum(bo_count_write) as cnt from $g5[board_table] where bo_table IN('edu_b')");
?>
(<?php echo $studyl[cnt];?>)

'아래 소스'가 어떤 걸 말하시는 건지 잘 모르겠어요.
사실 wr_id 가 A 게시판에 등록된 게시물의 고유 필드이기 때문에 ca_name 없이 그것만으로 구분을 해도 별 문제는 없습니다. (원하시는 기능이 따로 있으시다면 필요한 부분이겠지만)

혹시나 해서 방금 비슷한 스킨을 테스트용으로 만들어서 테스트해봤는데 제가 올렸던 쿼리가 작동하는 것을 확인했구요.
강좌 개설 게시판 스킨 쪽의 list 와 view 만 잘 구분하시면 별 문제는 없어보이는데요.

다시 올리신 소스는 저도 잘 모르겠습니다.

원하시는 기능이 정확하게 있다면 그 부분을 이야기하시거나 아니면 개발 의뢰를 하시는 것이 좋을 것 같네요.
(저는 개발 의뢰를 받을만한 수준은 못됩니다.)

답변을 작성하시기 전에 로그인 해주세요.
전체 123,531 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT