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

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
다른 게시판의 게시물 갯수 구하기

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 만 잘 구분하시면 별 문제는 없어보이는데요.

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

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

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

회원로그인

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