BOARD

팁·활용

그누보드 게시판 목록에서 첨부파일 다운로드 링크 추가하기

페이지 정보

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

본문

그누보드 게시판 목록에서 첨부파일 다운로드 링크 추가하기

그누보드 게시판 목록 페이지(list.skin.php)에서 상세 페이지로 이동하지 않고 직접 첨부파일을 다운로드할 수 있도록 스킨 코드를 수정하고 설정하는 방법을 안내합니다.

그누보드 게시판 목록에서 첨부파일 다운로드 링크 추가하기

그누보드 게시판 목록 페이지(list.skin.php)에서도 상세 페이지로 이동하지 않고 첨부파일을 바로 다운로드할 수 있도록 기능을 추가할 수 있습니다. 기본 게시판 목록 스킨에는 첨부파일 다운로드 링크가 포함되어 있지 않으므로 스킨 파일 수정과 관리자 설정이 필요합니다.

1. list.skin.php 파일 수정하기

게시판 스킨 폴더 내의 list.skin.php 파일을 수정합니다. 반복문 안에서 세션 설정 코드를 추가한 뒤 다운로드 링크를 원하는 위치에 삽입합니다.

  1. for ($i=0; $i<count($list); $i++) { 코드를 찾은 후 바로 밑에 다음 세션 설정 코드를 추가합니다.
    $ss_name = 'ss_view_'.$bo_table.'_'.$list[$i]['wr_id'];
    if (!get_session($ss_name)) set_session($ss_name, TRUE);
  2. 첨부파일 다운로드 링크를 노출하려는 위치에 다음 코드를 추가합니다. (유의사항: 글 등록 시 파일 #1번에 첨부한 파일만 적용됩니다.)
    <?php if ($list[$i]['file'][0]['file']) {?>
    <a href="<?php echo $list[$i]['file'][0]['href'];?>">[다운로드]</a>
    <?php }?>

2. 관리자 페이지 설정 변경하기

스킨 코드를 추가한 후 관리자 페이지에서 설정을 켜야 목록의 파일 정보가 정상적으로 출력됩니다.

  • 게시판 관리화면에서 목록에서 파일 사용 옵션에 체크합니다.

그누보드 게시판 목록에서 첨부파일 다운로드 링크 추가하기

게시판 목록 페이지(list.skin.php)에서 상세 페이지 이동 없이 첨부파일을 바로 다운로드하는 방법입니다. 이 작업은 스킨 파일 수정과 관리자 설정이 필요하며, 기본적으로 게시판 글 등록 시 파일 #1번에 첨부된 파일에만 적용됩니다.

1. list.skin.php 파일 수정

게시판 스킨 폴더 내 list.skin.php 파일을 열고 아래 코드를 적용합니다. 수정 전 반드시 원본 파일을 백업하세요.

  1. for ($i=0; $i<count($list); $i++) { 코드 바로 밑에 세션 설정 코드를 추가합니다.
    $ss_name = 'ss_view_'.$bo_table.'_'.$list[$i]['wr_id'];
    if (!get_session($ss_name)) set_session($ss_name, TRUE);
  2. 다운로드 링크를 노출할 위치에 아래 코드를 삽입합니다.
    <?php if ($list[$i]['file'][0]['file']) {?>
    <a href="<?php echo $list[$i]['file'][0]['href'];?>">[다운로드]</a>
    <?php }?>

2. 관리자 설정

관리자 페이지의 게시판 관리 화면에서 '목록에서 파일 사용' 옵션을 체크해야 파일 정보가 목록에 연동됩니다.

관리자 페이지 설정 방법

그누보드 게시판 스킨에 다운로드 링크 코드를 추가한 뒤에도 파일 정보나 다운로드 링크가 출력되지 않는다면, 관리자 페이지에서 해당 게시판 설정이 꺼져 있는지 확인해야 합니다.

점검 및 설정 순서

  1. 관리자 페이지로 이동하여 게시판 관리 메뉴를 엽니다.
  2. 설정을 변경할 대상 게시판의 관리 화면으로 진입합니다.
  3. 게시판 설정 항목 중 목록에서 파일 사용 옵션을 찾아 체크(사용) 상태로 변경합니다.

주의사항

  • 스킨 파일(list.skin.php) 내에 세션 설정 코드 및 다운로드 앵커 태그가 올바르게 삽입되어 있어야 관리자 설정과 연동되어 정상적으로 작동합니다.
  • 게시판에 글을 등록할 때 파일 #1번에 첨부한 파일이 목록 다운로드 링크에 주로 적용됩니다.

그누보드 게시판 목록에서 첨부파일 다운로드 링크를 추가하는 기본 스킨 수정 팁을 적용할 경우, 해당 기능은 게시판에 글을 등록할 때 파일 #1번에 첨부한 파일에만 적용됩니다. 따라서 파일 #1번이 아닌 다른 번호의 첨부파일은 기본적으로 목록 다운로드 링크에 노출되지 않을 수 있습니다.

그누보드 게시판 목록에서 첨부파일 다운로드 링크 추가하기

그누보드 게시판 목록 페이지(list.skin.php)에서 첨부파일을 바로 다운로드하려면 스킨 파일 수정과 관리자 설정이 필요합니다.

1. 게시판 스킨 파일 수정

게시판 스킨 폴더 내의 list.skin.php 파일에서 반복문(for ($i=0; $i<count($list); $i++) {) 내부에 세션 설정 코드를 추가하고, 원하는 위치에 다운로드 링크를 삽입합니다.

  • 세션 설정 코드:
    $ss_name = 'ss_view_'.$bo_table.'_'.$list[$i]['wr_id'];
    if (!get_session($ss_name)) set_session($ss_name, TRUE);

2. 관리자 설정

게시판 관리 화면에서 '목록에서 파일 사용' 옵션을 반드시 체크해야 파일 정보가 목록에 연동됩니다.

3. 특정 번호 또는 다중 첨부파일 다운로드 (심화)

기본적으로는 1번 파일만 적용되지만, board_file_table을 직접 조회하여 다른 번호의 파일을 가져올 수 있습니다.

  • 특정 번호(예: 1번) 조회 쿼리:
    $sql = " select * from $g5[board_file_table] where bo_table = '". $bo_table. "' and wr_id = '". $list[$i][wr_id]."' and bf_no = '1' ";
  • 전체 첨부파일 순회 쿼리:
    $sql = " select * from $g5[board_file_table] where bo_table = '". $bo_table. "' and wr_id = '". $list[$i][wr_id]."' order by bf_no ";
    $result = sql_query($sql);
    while ($row = sql_fetch_array($result)) {
    // $row['bf_file'] 등을 사용하여 다운로드 링크 구성
    }

그누보드 게시판 목록 첨부파일 다운로드 추가 가이드

내 상황우선할 판단다음 행동
게시판 목록(list.skin.php)에서 첨부파일 링크가 아예 보이지 않음기본 스킨 구조에 다운로드 코드가 누락되었는지 확인스킨 파일 반복문 내부에 세션 설정 코드 및 다운로드 앵커 태그 추가
코드를 추가했으나 다운로드 링크를 통해 파일이 출력되지 않음관리자 페이지의 게시판 설정 상태 확인게시판 관리화면에서 '목록에서 파일 사용' 옵션 체크
1번 파일이 아닌 2번 이후의 첨부파일을 목록에서 다운받고 싶음기본 1번 파일 제한을 해제하기 위한 데이터 테이블 조회 필요$g5['board_file_table']을 활용한 별도 SQL 쿼리 로직 구현

실전 FAQ

Q. 스킨 파일에 코드를 넣고 관리자 옵션도 켰는데 목록에 [다운로드] 문구가 아예 나타나지 않습니다.

  • 예외 및 원인: 글을 작성할 때 첨부파일을 '파일 #1번'에 올리지 않고 다른 번호에 등록했거나, 수정 중인 스킨 파일이 실제로 적용된 스킨 폴더(skin/board/스킨이름)의 파일이 아닐 수 있습니다. 관리자 페이지에서 현재 해당 게시판에 연결된 정확한 스킨 폴더명을 다시 확인해 보세요.

Q. 파일 #1번이 아니라 여러 개의 첨부파일을 목록에서 각각 다운로드하게 만들려면 어떻게 해야 하나요?

  • 대안: 기본 팁은 file[0] 배열을 참조하므로 1번 파일만 노출됩니다. 여러 파일을 처리하려면 $g5['board_file_table']에서 bo_table과 wr_id를 조건으로 하는 SQL 쿼리(order by bf_no)를 직접 실행하여 루프를 돌며 각 파일의 다운로드 링크를 생성해야 합니다.

함께 보면 좋은 글

참고자료

기타 참고자료

댓글목록

등록된 댓글이 없습니다.