게시판 최신글 메인로 호출 sql 쿼리문
본문
안녕하세요. 퍼블리싱을 하다가 그누보드를 통해 php를 조금씩 접하고있습니다.
게시판 연결까지 하고 메인에 최근 게시물을 노출하려고하는데, 사내에서 기존 개발자는 쿼리문으로 바꿔서 작성하는 것 같습니다. 각각의 게시물 타입에 따른 스킨을 만드는것이 아니라 즉 echo latest로 불러오는 방법 말고 쿼리로 불러와서 제가 만든 폼에 그냥 적용하는 방식을 사용하시는 것같은데 실전에서 다들 어떤 방식으로 사이트를 구축하시고 계실까요?
그리고 skin 안에 있는 내용을 인덱스에 그대로 붙여넣으면 에러가 생기던데 스킨 소스를 어떻게 index로 옮겨 올 수 있을까요?
사내 개발자가 사용하는 코드는 아래와 같습니다!
<?
$sql = "select wr_id, wr_subject, wr_2, wr_datetime,
(select bf_file from g5_board_file where wr_id=a.wr_id and bo_table='gallery' and bf_no=0) as bf_file
from g5_write_press as a
where wr_is_comment=0 order by a.wr_id desc
LIMIT 0, 3";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++) {
?>
<li>
<a href="/g5/bbs/board.php?bo_table=gallery&wr_id=<?=$row["wr_id"]?>" class="nsTextBox">
<span><?=$row['wr_2']?></span>
<b><?=$row['wr_subject']?></b>
<p><?=substr($row['wr_datetime'], 0, 10)?></p>
</a>
</li>
<?}?>
답변 2
특별한 이유가 없다면 대부분 그누보드 기본 최신글 함수를 사용합니다.
그누보드 최신글 스킨의 경우
for ($i=0; $i<count($list); $i++) {
또는
for ($i=0; $i<$list_count; $i++) {
이렇게 되어 있는데
사내 개발자가 만든 것을 활용하려면 저 부분을 이렇게 해야겠죠.
for ($i=0; $row=sql_fetch_array($result); $i++) {
제목이나 기타 출력 부분들도 사내 개발자가 만든 거 그대로 하셔야 하고..
그 외 나머지들은 스킨 디자인 그대로 갖다 쓰면 되고요.
latest() 같은 함수를 만드는 목적 중에 하나는
재사용성입니다.
간단한 내용이면서, 딱 한 번만 쓴다면 굳이 함수를 만들 필요가 없습니다.