BOARD

팁·활용

그누보드 전체 최신글 new.php 목록에 댓글 내용 출력하기

페이지 정보

profile_image
작성자 최고관리자
댓글 0건 조회 14회 작성일 26-10-03 17:51

본문

그누보드 전체 최신글 new.php 목록에 댓글 내용 출력하기

그누보드 전체 최신글(new.php) 목록에서 기본 제목과 [코] 표시 대신 실제 댓글 내용을 바로 출력하도록 코드를 수정하고, 비밀댓글 보안 처리까지 적용하는 방법을 안내합니다.

전체 최신글(new.php) 목록에서 댓글 내용 출력하기

그누보드5의 전체 최신글 목록 페이지(bbs/new.php)에서는 기본적으로 댓글이 달릴 때 게시물 제목 앞쪽에 [코] 글자를 표시하는 방식으로 출력됩니다. 스킨 파일을 별도로 수정하지 않고 코어 파일인 bbs/new.php를 수정하여 원글 제목 대신 실제 댓글 내용을 출력할 수 있습니다.

수정 파일 및 위치

  • 수정할 파일: bbs/new.php

1. 쿼리에 필드 추가

bbs/new.php 파일 내에서 $row3를 조회하는 SQL 쿼리문에 wr_content와 wr_option 필드를 추가합니다. (쉼표 구분에 주의하세요.)

$row3 = sql_fetch(" select mb_id, wr_name, wr_email, wr_homepage, wr_datetime, wr_content, wr_option from {$tmp_write_table} where wr_id = '{$row['wr_id']}' ");

2. 비밀글 및 댓글 내용 출력 조건문 추가

조금 더 아래에 있는 출력 처리 부분에서 비밀글 여부와 비밀글 체크박스 처리 로직을 보완합니다. 원글이 비밀글인 게시물의 댓글이나 비밀글 체크박스를 체크하고 남긴 댓글은 원래 내용이 노출되지 않고 "비밀 댓글입니다."로 출력되도록 설정합니다.

if (strstr($row2['wr_option'], 'secret') || strstr($row3['wr_option'], 'secret')) {
 $row2['wr_subject'] = '비밀 댓글입니다.';
} else {
 $row2['wr_subject'] = $row3['wr_content'];
}

확인 방법

코드를 수정한 뒤 스킨을 변경하지 않고 웹브라우저에서 bbs/new.php 페이지에 접속하여 댓글이 달린 항목에 실제 댓글 내용과 비밀댓글 처리 문구가 정상적으로 노출되는지 확인합니다. 비밀글을 사용 중인 사이트라면 사전에 해당 체크 및 동작을 확인하고 적용하는 것이 좋습니다.

전체 최신글(new.php) 비밀댓글 보안 처리 방법

그누보드 전체 최신글 목록에 실제 댓글 내용을 출력할 때, 원글이 비밀글이거나 비밀글 체크박스를 체크하고 작성한 비밀 댓글인 경우 내용이 그대로 노출되지 않도록 wr_option 값을 확인하여 예외 처리를 적용해야 보안상 안전합니다.

처리 조건 및 로직

bbs/new.php 파일에서 댓글 정보를 가져와 출력할 때 아래와 같이 조건문을 구성하여 비밀 댓글 여부를 판단합니다.

  • 확인 위치: bbs/new.php 파일 내부
  • 적용 조건 및 코드 예시:
    if (strstr($row2['wr_option'], 'secret') || strstr($row3['wr_option'], 'secret')) {
    $row2['wr_subject'] = '비밀 댓글입니다.';
    } else {
    $row2['wr_subject'] = $row3['wr_content'];
    }
  • 동작 설명: 원글(row2)의 옵션이나 댓글(row3)의 옵션에 secret 문자열이 포함되어 있으면 $row2['wr_subject'] 값을 비밀 댓글입니다.로 처리하고, 그렇지 않은 경우에만 실제 댓글 내용인 $row3['wr_content']를 출력합니다.

주의사항

  • 비밀글 기능을 이미 사용하고 있는 사이트라면 위 코드를 적용하기 전후로 비밀 댓글 내용이 목록에 노출되지 않는지 사전에 테스트하여 확인해야 합니다.

전체 최신글 목록 댓글 출력 적용 흐름

내 상황우선할 판단다음 행동
그누보드5 사이트의 bbs/new.php 목록에서 기본 [코] 표시 대신 실제 댓글 내용을 바로 노출하고 싶음스킨 파일 수정 없이 코어 파일인 bbs/new.php 직접 수정 방식을 선택bbs/new.php에서 wr_content, wr_option 쿼리 추가 및 비밀글 예외 처리 로직 반영
비밀글이 포함된 게시판을 운영 중이어서 보안 노출이 우려됨비밀글 체크박스 및 원글 옵션(secret) 확인 로직 우선 적용조건문을 통해 비밀 댓글인 경우 '비밀 댓글입니다.' 문구가 출력되는지 검증

실전 FAQ

Q. 비밀글 체크박스를 체크하고 남긴 댓글이나 원글이 비밀글인 경우 어떻게 처리되나요?

  • 답변: 수정 과정에서 strstr($row2['wr_option'], 'secret') || strstr($row3['wr_option'], 'secret') 조건문을 통해 비밀글 여부를 확인하므로, 실제 내용 대신 "비밀 댓글입니다." 문구가 안전하게 출력됩니다. 사전에 사이트 내 비밀글 사용 여부를 체크하고 적용하는 것이 좋습니다.

함께 보면 좋은 글

참고자료

기타 참고자료

댓글목록

등록된 댓글이 없습니다.