테스트 사이트 - 개발 중인 베타 버전입니다

그룹게시판의 인기글만 뽑는 코드를 만드려고 하는데 에러가 발생하내요? 채택완료

열정성실맨 10년 전 조회 3,684

스킨에 있는 인기글 게시판을 조금 수정해서 그룹 게시판  인기글을 뽑는 코드를 만드려는데요.

메뉴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개

10년 전

</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개

열정성실맨
10년 전
잉끼님 도움 주셔서 감사합니다~
저렇게 하면 화면에 에러 없이 잘 나옵니다.
그런데 게시물이 있는데도 일간 조회. 일간 추천, 주간 조회, 주간 추천 전부 게시물이 없다고 나오네요~
그래서 다시 게시물을 작성해봐도 게시물이 없다고 나오네요~
이건 왜 그런 걸까요?

댓글을 작성하려면 로그인이 필요합니다.

10년 전

$bo_table 이값이 넘어오는 변수가 없는거 같은데.... 

 

$tmp_write_table = $g5['write_prefix'] . $bo_table;

이부분을

 $tmp_write_table = $g5['write_prefix'] . $board['bo_table']; 

 

이렇게 한번 해보시져..

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인