그룹게시판의 인기글만 뽑는 코드를 만드려고 하는데 에러가 발생하내요? 채택완료
스킨에 있는 인기글 게시판을 조금 수정해서 그룹 게시판 인기글을 뽑는 코드를 만드려는데요.
메뉴1($gr_id)를 누르면 그안에 있는 게시판($bo_table) 들의 조회수 추천수를 많은수 인기순으로 뽑아서 보여주려고 하는데요. 이런 에러가 발생하는데
select * from g5_write_ where wr_is_comment = 0 and wr_datetime between '2015-04-09 04:42:20' and '2015-04-10 04:42:20' order by wr_hit desc limit 0, 10
1146 : Table 'shintest.g5_write_' doesn't exist
error file : /gnuboard5.0.30/bbs/group.php
db에 g5_write_ 부분이 없다고 하는거 같은데요.
이렇게 코드를 짜면 될줄 알았는데 어떤 방식이 잘 못 된거죠? ㅠㅠ
혹시 코드 보시고 어디가 잘못 됬거나 어떻게 하면 되는지 도움이나 팁을 주시면 감사하겠습니다.
혼자서 해보려고 하니까 쉬운게 하나 없네요ㅠㅠ
저 코드는 bbs\group.php 여기서 include_once('./_head.php');?> 부분 다음에
<?php include_once(G5_LIB_PATH.'/latest_popular2.lib.php'); ?> 넣었습니다.
</p><p><?php</p><p>if (!defined('_GNUBOARD_')) exit;</p><p> </p><p>function latest_popular2($gr_id, $rows=10, $subject_len=40, $term='', $options='')</p><p>{</p><p> global $g5;</p><p> </p><p><span class="Apple-tab-span" style="white-space:pre"> </span>switch($term)</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>{</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>case '일간': $term_time = date("Y-m-d H:i:s", G5_SERVER_TIME-3600*24); break;</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>case '주간': $term_time = date("Y-m-d H:i:s", G5_SERVER_TIME-3600*24*7); break;</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>case '월간': $term_time = date("Y-m-d H:i:s", G5_SERVER_TIME-3600*24*30); break;</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>}</p><p> </p><p> $list = array();</p><p> </p><p> if($gr_id)<span class="Apple-tab-span" style="white-space:pre"> </span>//각 게시판 출력</p><p><span class="Apple-tab-span" style="white-space:pre"> </span> {<span class="Apple-tab-span" style="white-space:pre"> </span></p><p><span class="Apple-tab-span" style="white-space:pre"> </span>$sql = " select * from {$g5['board_table']} where gr_id = '{$gr_id}' ";</p><p> $board = sql_fetch($sql);</p><p> $bo_subject = get_text($board['bo_subject']);</p><p> </p><p> $tmp_write_table = $g5['write_prefix'] . $bo_table; // 게시판 테이블 전체이름</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>$sql_between = " wr_datetime between '$term_time' and '".G5_TIME_YMDHIS."' ";</p><p> $sql = " select * from {$tmp_write_table} where wr_is_comment = 0 and {$sql_between} order by {$options} limit 0, {$rows} ";</p><p> $result = sql_query($sql);</p><p> for ($i=0; $row = sql_fetch_array($result); $i++)</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>{</p><p> $list[$i] = get_list($row, $board, $latest_skin_url, $subject_len);</p><p> }</p><p> }</p><p> ob_start();</p><p>?></p><p> </p><p><div class="lt_full"></p><p><div class="lt2"></p><p> <ul></p><p> <?php for ($i=0; $i<count($list); $i++) { ?></p><p> <li></p><p> <?php</p><p> echo "<a href=\"".$list[$i]['href']."\">";</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>echo "<img src='".G5_URL."/img/num_".($i+1).".gif'> ";</p><p> echo "<strong>".$list[$i]['subject']."</strong>";</p><p> </p><p> if ($list[$i]['comment_cnt'])</p><p> echo $list[$i]['comment_cnt'];</p><p> </p><p> echo "</a>";</p><p> ?></p><p> </li></p><p> <?php</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>if (($i+1)%($rows/2)==0) echo "</ul></div><div class='lt2'><ul>";</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>}</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>?></p><p> <?php if (count($list) == 0) { //게시물이 없을 때 ?></p><p> <li>게시물이 없습니다.</li></p><p> <?php } ?></p><p> </ul></p><p></div></p><p></div></p><p> </p><p><?</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>$content = ob_get_contents();</p><p> ob_end_clean();</p><p> </p><p> return $content;</p><p>}</p><p>?> </p><p><span style="font-size: 13.3333330154419px; line-height: 1.5;">
답변 2개
</p><p> if($gr_id) //각 게시판 출력
{
$sql = " select * from {$g5['board_table']} where gr_id = '{$gr_id}' ";
$group = sql_query($sql);
for ($b=0; $board = sql_fetch_array($group); $b++)
$bo_subject = get_text($board['bo_subject']);
$tmp_write_table = $g5['write_prefix'] . $board[bo_table]; // 게시판 테이블 전체이름
$sql_between = " wr_datetime between '$term_time' and '".G5_TIME_YMDHIS."' ";
$sql = " select * from {$tmp_write_table} where wr_is_comment = 0 and {$sql_between} order by {$options} limit 0, {$rows} ";
$result = sql_query($sql);
for ($i=0; $row = sql_fetch_array($result); $i++)
{
$list[$i] = get_list($row, $board, $latest_skin_url, $subject_len);
}
}
}
</p><p>
위와 같이 해보세요.
그룹별로 게시판 정보를 가져와서 루프로 돌리면서 1행씩 가져오셔야합니다.
테스트 해보니는 못했습니다.
아마도 오류가 발생할테니 적당히 수정해서 쓰세요.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
저렇게 하면 화면에 에러 없이 잘 나옵니다.
그런데 게시물이 있는데도 일간 조회. 일간 추천, 주간 조회, 주간 추천 전부 게시물이 없다고 나오네요~
그래서 다시 게시물을 작성해봐도 게시물이 없다고 나오네요~
이건 왜 그런 걸까요?