다시 한번 MySQL 잘 아시는분.... 도와주세요. (__) > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

다시 한번 MySQL 잘 아시는분.... 도와주세요. (__) 정보

다시 한번 MySQL 잘 아시는분.... 도와주세요. (__)

본문

http://www.sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=1774

위 페이지의 코드를 그대로 적용하면 현재 사용하는 최신글 스킨이 제대로 표현이 안되더군요.

현재 사용하고 있는 스킨은 첫이미지, 카타고리명, 제목을 추출하고 있습니다.

이미지는 엑박 나머지는 출력이 안되길래 모든 필드를 추출하고자 위 페이지의 소스에서

이 부분을....
$row2 = sql_fetch(" select wr_subject,wr_id from $tmp_write_table where wr_id = '$row[wr_id]' ");

이렇게 바꿔봤습니다.
$row2 = sql_fetch(" select * from $tmp_write_table where wr_id = '$row[wr_id]' ");

그랬더니 카타고리명은 출력이 되더군요. ㅡ_ㅡa 게시물이 중복되게 출력되고 난장판이더군요;;


그래서 기존의 latest 소스를 참고하여

아래 코드를....
$result = sql_query($sql);

    for ($i=0; $row = sql_fetch_array($result); $i++)
    {
        $tmp_write_table = $g4[write_prefix] . $row[bo_table];

        if ($row[wr_id] == $row[wr_parent]) // 원글
        {
                //전광판이기에 글제목과 wr_id만 뽑았습니다. 일반 최근게시물로 쓰시려면 필드 추가로 뽑아오시면 되구요..
        $row2 = sql_fetch(" select wr_subject,wr_id from $tmp_write_table where wr_id = '$row[wr_id]' ");
        $list[$i] = $row2;
        $list[$i][bo_table] = $row[bo_table];
        $list[$i][href] = "$g4[bbs_path]/board.php?bo_table=$row[bo_table]&wr_id=$row2[wr_id]";
        $list[$i][wr_subject] = cut_str($row2[wr_subject], $subject_len, "…");   
        }
    }


이렇게 바꿔봤습니다.
    $result = sql_query($sql);

    for ($i=0; $row = sql_fetch_array($result); $i++)
    {
        $tmp_write_table = $g4[write_prefix] . $row[bo_table];

        $sql = sql_fetch(" select * from $tmp_write_table where wr_is_comment = 0");
        $result = sql_query($sql);

        for ($i=0; $row = sql_fetch_array($result); $i++) {
        $list[$i] = get_list($row, $latest_skin_path, $subject_len);
        }
 
    }



그랬더니..

Array

1064 : You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'Array' at line 1

error file : /index.php

위와 같은 에러가 출력이 됩니다.

카페24 호스팅이며 MySQL 4.0.22 입니다.
아래 질문에서 위 링크된 페이지의 코드를 사용하기에는 버전문제가 없다고 하셨습니다.

도대체 저 코드를 어떻게 수정을 해야 모든 필드를 추출 할 수 있는지 궁금합니다.
저에게 일용할 가르침을 주세요.. (__)

댓글 전체

$result = sql_query($sql);

    for ($i=0; $row = sql_fetch_array($result); $i++)
    {
        $tmp_write_table = $g4[write_prefix] . $row[bo_table];

        if ($row[wr_id] == $row[wr_parent]) // 원글
        {
        $row2 = sql_fetch(" select * from $tmp_write_table where wr_id = '$row[wr_id]' ");

        $list[$i] = get_list($row2, $board, $latest_skin_path, $subject_len);
        $list[$i][bo_table] = $row[bo_table];
        $list[$i][href] = "$g4[bbs_path]/board.php?bo_table=$row[bo_table]&wr_id=$row2[wr_id]";
        }
    }

흐음...요렇게는 안되나요?
오.. 알려주신 대로 했더니 카타고리명과 제목이 표시가 되는군요!!
그런데 가장 중요한 이미지가 엑박이 뜨네요.... OTL 그래도 희망이 보이는 군요. 감사합니다.

알려주신 코드에서 $board 변수에 해당하는 값이 없어서 지웠더니 제목이 길이제한 없이 다 표시가 되더군요. 음....

따로 이미지를 추출하는 최신글 함수는 본적이.... select * from 로 다 된거 아닌가요?
흠..
제가 좀 어깨넘어로 배운 php라 짬뽕인데~ 된다고하니 다행이네요~
흠.. 그럼..

$list[$i] = get_list($row2, $board, $latest_skin_path, $subject_len);
$list[$i][bo_table] = $row[bo_table];
 
밑에..
이미지를 view.skin.php에 있는걸 응용해서..
        for ($i=0; $i<=count($list[$i][file]); $i++) {
            if ($list[$i][file][$i][view])
                echo $list[$i][file][$i][view] . "<p>";
        }

안되면..

    $list[$i][file]["count"] = 0;
    $sql = " select * from $g4[board_file_table] where bo_table = '$list[$i][bo_table] ' and wr_id = '$row[wr_id]' order by bf_no ";
    $result = sql_query($sql);
    while ($row3 = sql_fetch_array($result))
    {
        $no = $row3[bf_no];
        $list[$i][file][$no][view] = view_file_link($row3[bf_file], $row3[bf_width], $row3[bf_height], $list[$i][file][$no][content]);
        $list[$i][file]["count"]++;
    }
로 전체를 추출해보시는건 어떨까요?
전체 66,554 |RSS
그누4 질문답변 내용 검색

회원로그인

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