A 게시판의 마지막 10개 파일의 첨부 파일을 배열로 만들려면 어떻하나요?

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
A 게시판의 마지막 10개 파일의 첨부 파일을 배열로 만들려면 어떻하나요?

QA

A 게시판의 마지막 10개 파일의 첨부 파일을 배열로 만들려면 어떻하나요?

본문

A게시판에서 10개의 게시물에 각각 1개씩 mp3 파일을 저장했습니다. (총 10개)

이 파일들의 경로를 불러와서 배열을 만들려고 합니다. 

그런데 불러오는 페이지가 루트의 index.php입니다. (게시판 list.php가 아님)

 

$sql = "select... 해서 A 게시판을 지정하고, 그 첨부 파일 url과 이름을 가져와야 하며,

for 등으로 10번을 카운트 한 다음에

$url01 = "경로와 파일명";

 

이렇게 해야 할 거 같은데... 잘 안 되네요. ㅠ.ㅠ

(배열을 못 만들어서 그런가 봐요. 정규식에 큰 약점이 있어요. ㅡ.ㅡ;;)

 

결론적으로 특정 게시판의 10개 게시물의 첨부파일 경로를 가져와서 변수 저장하는 건데,

코드나 예제 소스 등을 도움받았으면 합니다. 

 

 

이 질문에 댓글 쓰기 :

답변 4


$bo_table = 'table';
    $write_table = $g5['write_prefix'].$bo_table;
    $sql = "select a.wr_id as id, b.bf_source as source, b.bf_file as fname 
            from {$write_table} as a left join {$g5['board_file']} as b ON a.wr_id = b.wr_id
            where a.wr_is_comment = '0' order by a.wr_datetime desc limit 10";
    $res = sql_query($sql);
    $file = array();
    for($i=0;$row=sql_fetch_array($res);$i++) {
        $file[$i]['id']     = $row['id'];
        $file[$i]['source'] = $row['source'];
        $file[$i]['fname']  = $row['fname'];
    }

 

대략 이런식으로 배열을 만들면 되지 않을까요?

파일 경로는 지금 생각이 안나서 빼놨습니다.

일단, 답변 감사합니다.

$bo_table = '원하는 게시판명'; 이렇게 하면 되나요?

파일 경로 문제 때문에 아직 적용에 성공 못했는데,
전에는 파일 경로를 이렇게 사용했었거든요.
$src = '/data/file/' . $row['bo_table'] . '/' . $row['bf_file'];
그런데, 이걸 위의 코드 소스에서는 어떻게 사용해야 되는지 모르겠어요.

그리고...
올려 주신 코드에서
a.wr_id 나 b.wr_id, b.bf_source 같은 것이 보이는데,
a나 b는 무엇을 의미하나요?

게시판의 리스트에서는 첨부파일의 경로와 파일명을  추출할 수 있을 거에요.

그럼 리스트페이지를 curl 로 긁어서 원하는 문자열만 추출하여 순차적으로 변수에 담을 수 있을 것입니다.

관심 주셔서 감사해요.

그런데, 다른 페이지에서 부르려니 막막하네요.
더구나 curl를 긁는 것을 할 줄 몰라서 더 한심한 상황입니다.

$sql = "select * from {$g5['board_table']} where bo_table = '원하는 게시판명'";
$fileurl = sql_fetch($sql);

이런 식으로는 할 수 없을까요?

아래처럼 사용한다는 분도 있던데, 이런 경우엔 어떻게 echo문을 써서 확인해 볼 수 있나요?

 



function get_file_my($bo_table, $wr_id)
{
    global $g5, $qstr;

    $file['count'] = 0;
    $sql = " select * from {$g5['board_file_table']} where bo_table = '$bo_table' and wr_id = '$wr_id' order by bf_no ";
    $result = sql_query($sql);
    while ($row = sql_fetch_array($result))
    {
        $no = $row['bf_no'];
        $file[$no]['href'] = G5_BBS_URL."/download.php?bo_table=$bo_table&wr_id=$wr_id&no=$no" . $qstr;
        $file[$no]['download'] = $row['bf_download'];
        // 4.00.11 - 파일 path 추가
        $file[$no]['path'] = G5_DATA_URL.'/file/'.$bo_table;
        $file[$no]['size'] = get_filesize($row['bf_filesize']);
        $file[$no]['datetime'] = $row['bf_datetime'];
        $file[$no]['source'] = addslashes($row['bf_source']);
        $file[$no]['bf_content'] = $row['bf_content'];
        $file[$no]['content'] = get_text($row['bf_content']);
        //$file[$no]['view'] = view_file_link($row['bf_file'], $file[$no]['content']);
        $file[$no]['view'] = view_file_link($row['bf_file'], $row['bf_width'], $row['bf_height'], $file[$no]['content']);
        $file[$no]['file'] = $row['bf_file'];
        $file[$no]['image_width'] = $row['bf_width'] ? $row['bf_width'] : 640;
        $file[$no]['image_height'] = $row['bf_height'] ? $row['bf_height'] : 480;
        $file[$no]['image_type'] = $row['bf_type'];
        $file['count']++;
    }

    return $file;
}

$qq = sql_query("select * from {$g5['board_file_table']} where bo_table = '게시판명' bf_no=0  order by wr_id desc limit 0, 10");
while($row = sql_fetch_array($qq)){

 $file[]=array($row['bf_source'], G5_URL.'/data/file/게시판명/'.$row['bf_file']);

}

 

print_r($file);


 

답변을 작성하시기 전에 로그인 해주세요.
전체 124,155 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT