테스트 사이트 - 개발 중인 베타 버전입니다

bo_notice는 어디에서 가져오나요? 채택완료

음바폐 7년 전 조회 3,495

빠른 답변 덕분에 공부가 쏙쏙 잘 되고 있습니다. 감사합니다.

 

bo_notice를

$notice_array = explode(',', trim($board['bo_notice']));

 

이런식으로 여기 저기에서 자주 볼 수 있습니다. 공지글 번호인데,

bo_notice값은 어디에서 가져오나요?

 

감사합니다.

댓글을 작성하려면 로그인이 필요합니다.

답변 4개

채택된 답변
+20 포인트
잉끼s
7년 전

/lib/common.php 중

function board_notice() 에서 현재 게시판의 공지글 wr_id값을 구합니다.

 

해당 함수는 게시글 작성, 삭제 시 호출되어집니다.

 

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 7개

음바폐
7년 전
함수로 가기 이전의 bo_notice 값이 어디에서 오는지 알고 싶은겁니다~
잉기
7년 전
게시글 작성, 삭제 부분에 있습니다.
작성 부분을 부분을 보시면


$bo_notice = board_notice($board['bo_notice'], $wr_id, $notice);
sql_query(" update {$g5['board_table']} set bo_notice = '{$bo_notice}' where bo_table = '{$bo_table}' ");

이렇게 해당 함수를 호출하여 bo_notice 를 업데이트 합니다.

함수 내용을 분석해보시면 이해가 되실겁니다.
음바폐
7년 전
답변 감사합니다. 기다리고 있었습니다.


$bo_notice = board_notice($board['bo_notice'], $wr_id, $notice);
sql_query(" update {$g5['board_table']} set bo_notice = '{$bo_notice}' where bo_table = '{$bo_table}' ");

여기서 sql_query는 bo_notice값이 없을시 새로운 $bo_notice값을 저장한다 라고 이해되는데, 맨 초기 새 글 작성시에, $board['bo_notice']의 bo_notice 필드값은 비어있잖아요. 그럼

$bo_notice = board_notice($board['bo_notice'], $wr_id, $notice);

board_notice 함수에서 $bo_notice 값이 어떻게 구해지나요?

감사합니다
음바폐
7년 전
혹시 이 부분만 설명 부탁드려도 될까요

$bo_notice = $wr_id.($board['bo_notice'] ? ",".$board['bo_notice'] : '');
잉기
7년 전
그냥 빈값입니다.
공지가 없을 때는 빈값입니다. 아무 값이 없습니다.

$board['bo_notice'] = "";

위와 같은 상태입니다.
잉기
7년 전
삼항 연산자를 잘 모르시는 것 같네요.

여기서 설명드리는 것보다는

http://link2me.tistory.com/559
위 게시물 참고하시기 바랍니다.
음바폐
7년 전
감사합니다. 덕분에 많은 공부를 하였습니다

댓글을 작성하려면 로그인이 필요합니다.

그누위즈

게시판, 즉 주소 url에서 botable=게시판명

이런 형식으로 url이 있으면

www/common.php 파일에서

</p>

<p>if ($bo_table) {

    $board = sql_fetch(" select * from {$g5['board_table']} where bo_table = '$bo_table' ");

    if ($board['bo_table']) {

        set_cookie("ck_bo_table", $board['bo_table'], 86400 * 1);

        $gr_id = $board['gr_id'];

        $write_table = $g5['write_prefix'] . $bo_table; // 게시판 테이블 전체이름

        //$comment_table = $g5['write_prefix'] . $bo_table . $g5['comment_suffix']; // 코멘트 테이블 전체이름

        if (isset($wr_id) && $wr_id)

            $write = sql_fetch(" select * from $write_table where wr_id = '$wr_id' ");

    }

}</p>

<p>

$board 배열변수가 셋팅됩니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

음바폐
7년 전
답변 감사합니다~

댓글을 작성하려면 로그인이 필요합니다.

s
sinbi Expert
7년 전

위치는 소스를 봐야 알겠지만... 보통은 이렇게 사용해요.

 

변수 =  테이블 필드를 배열로 불러오는 쿼리 소스;

 

그럼, 저 변수에 해당 게시판의 필드가 배열변수로 들어갑니다.

 

<?PHP

print_r2($board);

?>

 

이렇게 찍어보시면 저 변수에 들어간 배열을 모두 확인 가능해요.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

음바폐
7년 전
예, 그 쿼리 소스가 어느 위치에 있는지 여쭌거거든요~
s
sinbi
7년 전
https://homzzang.com/b/code-261 참고
음바폐
7년 전
답변 감사합니다~

댓글을 작성하려면 로그인이 필요합니다.

해피정
7년 전

g5_board 에 공지글 저장하는 필드가 있습니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 7개

음바폐
7년 전
bo_notice 필드에 insert into bo_notice values .. 등을 저장하는 sql 쿼리문이 있는 php파일이 어디에 있는지 해서요
음바폐
7년 전
그런것이 없다면 <input type="hidden" name="bo_notice" value="<?php echo $bo_notice ?>">같은 형식이 어디엔가 있는건지
해피정
7년 전
bbs/write_update.php 를 찾아보면 공지사항 저장쿼리가 있습니다.
음바폐
7년 전
귀찮게 해서 죄송합니다. write.update 파일에서 그 내용을 찾았습니다.

if ($w == '') { // 새 글
if ($notice) {
$bo_notice = $wr_id.($board['bo_notice'] ? ",".$board['bo_notice'] : '');
sql_query(" update {$g5['board_table']} set bo_notice = '{$bo_notice}' where bo_table = '{$bo_table}' ");

여기서 sql_query는 bo_notice값이 없을시 새로운 $bo_notice값을 저장한다 라고 이해되는데, 맨 초기 새 글 작성시에, $board['bo_notice']의 bo_notice 필드값은 비어있잖아요. 그럼

이 축약형 조건 $bo_notice = $wr_id.($board['bo_notice'] ? ",".$board['bo_notice'] : '');

$bo_notice = ' '; 가 된다는 뜻일텐데..

비어있는 $bo_notice가 데이터베이스에 저장된다는 뜻은 제가 잘못 이해했다는거겠죠 ㅠㅠ

초기에 새로운 공지글 작성시에, 비어 있는 $board['bo_notice']의 bo_notice 필드값이 write.update로 넘어가면서 어떻게 저장되는지만 설명 부탁드려도 될까요?
감사합니다
해피정
7년 전
배열로 저장됩니다. 1,2,3 이런식으로
음바폐
7년 전
혹시 이 부분만 설명 부탁드려도 될까요

$bo_notice = $wr_id.($board['bo_notice'] ? ",".$board['bo_notice'] : '');
음바폐
7년 전
답변 감사합니다~

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인