a게시판의 정보를 가져오고 싶습니다.

a게시판의 정보를 가져오고 싶습니다.

QA

a게시판의 정보를 가져오고 싶습니다.

본문

aa회원이 a테이블게시판의 여분필드5에 등록된것을

aa회원이 b게시판에 쓴글 뷰페이지에 보여지게 하고싶은데

이럴때는 어떻게 해야하는지 궁금합니다.

알려주시면 감사하게습니다.

이 질문에 댓글 쓰기 :

답변 1

b 게시판의 특정 글을 조회할 때,

해당 글 작성자가 a 게시판에서 남긴 wr_5 값을 함께 볼 수 있도록

b 게시판의 view.php 파일을 수정하여 a 게시판의 데이터를 조회/출력하면,

> > SQL JOIN 또는 별도 쿼리를 활용해

a 테이블에서 해당 회원의 정보를 가져와 b 게시판 뷰 페이지에 출력하면 될까요~

 

*bbs/view.php 파일을 열고, 해당 글을 조회하는 부분 아래에 다음 SQL을 추가

// 현재 보고 있는 글의 작성자 ID 가져오기
$member_id = $view['mb_id']; 

// a 게시판에서 동일 작성자의 wr_5 값 가져오기
$sql = "SELECT wr_5 FROM g5_write_a WHERE mb_id = '$member_id' ORDER BY wr_id DESC LIMIT 1";
$result = sql_fetch($sql);
$extra_field_5 = isset($result['wr_5']) ? $result['wr_5'] : '없음';

*view.skin.php 파일에서 원하는 위치에 다음을 추가하여 wr_5 값을 출력

<div class="extra-info">
    <strong>추가 정보:</strong> <?php echo htmlspecialchars($extra_field_5); ?>
</div>

현재 write.php 또는 write.skin.php에서 a 게시판의 데이터를 조회하지 않기 때문일 겁니다.
글쓰기 페이지에서 a 게시판의 wr_5 값을 가져와 입력 폼에 표시하려면,
write.php에 추가적인 SQL 쿼리를 작성하여 해당 회원의 wr_5 값을 불러오고,
이를 write.skin.php에서 출력하는 방식으로 커스텀해 보시면 어떨까 싶습니다.
*write.php에서 현재 로그인한 사용자의 mb_id를 가져와
  a 게시판(g5_write_a)에서 wr_5 값을 조회하도록 함.


// 현재 로그인한 사용자의 ID 가져오기
$member_id = isset($member['mb_id']) ? $member['mb_id'] : '';

// a 게시판에서 해당 사용자의 가장 최근 wr_5 값 가져오기
$extra_field_5 = '';
if ($member_id) {
    $sql = "SELECT wr_5 FROM g5_write_a WHERE mb_id = '$member_id' ORDER BY wr_id DESC LIMIT 1";
    $result = sql_fetch($sql);
    $extra_field_5 = isset($result['wr_5']) ? $result['wr_5'] : '';
}

*write.skin.php에서 해당 값을 출력하여 사용자가 볼 수 있도록 함.

<div class="extra-info">
    <label for="extra_field_5">A 게시판 추가 정보:</label>
    <input type="text" id="extra_field_5" name="extra_field_5" value="<?php echo htmlspecialchars($extra_field_5); ?>" readonly>
</div>

아래와같이 게시판아이디 바꾸어서 넣엇는데 빈칸으로 나와서요
알려주셔서 감사한데 이부분 한번만 ㅎㅎ
뷰페이지는 잘 출력됫는데 안되어서요

<?
// 현재 로그인한 사용자의 ID 가져오기
$member_id = isset($member['mb_id']) ? $member['mb_id'] : '';

// a 게시판에서 해당 사용자의 가장 최근 wr_5 값 가져오기
$extra_field_5 = '';
if ($member_id) {
    $sql = "SELECT wr_5 FROM g5_write_edong WHERE mb_id = '$member_id' ORDER BY wr_id DESC LIMIT 1";
    $result = sql_fetch($sql);
    $extra_field_5 = isset($result['wr_5']) ? $result['wr_5'] : '';
}
?>


<div class="extra-info">
    <label for="extra_field_5">A 게시판 추가 정보:</label>
    <input type="text" id="extra_field_5" name="extra_field_5" value="<?php echo htmlspecialchars($extra_field_5); ?>" readonly>
</div>

우선 SQL 실행 결과를 확인하기 위해
write.php에서 다음과 같이 디버깅 코드를 추가하여 실제 wr_5 값이 조회되는지 확인해보세요.


// 현재 로그인한 사용자의 ID 가져오기
$member_id = isset($member['mb_id']) ? $member['mb_id'] : '';

$extra_field_5 = '';

// 디버깅: 로그인한 사용자의 ID 확인
error_log("로그인한 사용자 ID: " . $member_id);

if ($member_id) {
    // SQL 실행
    $sql = "SELECT wr_5 FROM g5_write_edong WHERE mb_id = '$member_id' ORDER BY wr_id DESC LIMIT 1";
    $result = sql_fetch($sql);
    
    // 디버깅: SQL 결과 확인
    error_log("SQL 실행 결과: " . print_r($result, true));

    $extra_field_5 = isset($result['wr_5']) ? $result['wr_5'] : '없음';
}

// 디버깅: 최종 wr_5 값 확인
error_log("wr_5 값: " . $extra_field_5);

※ 이상이 없다면~
*write.php

// 현재 로그인한 사용자의 ID 가져오기
$member_id = isset($member['mb_id']) ? $member['mb_id'] : '';

$extra_field_5 = '';

// ID가 존재하는 경우에만 실행
if (!empty($member_id)) {
    // a 게시판에서 해당 사용자의 가장 최근 wr_5 값 가져오기
    $sql = "SELECT wr_5 FROM g5_write_edong WHERE mb_id = '$member_id' ORDER BY wr_id DESC LIMIT 1";
    $result = sql_fetch($sql);
    
    // wr_5 값이 존재하면 가져오고, 없으면 '없음' 처리
    $extra_field_5 = !empty($result['wr_5']) ? $result['wr_5'] : '없음';
}

// `write.skin.php`에서 사용할 수 있도록 변수 전달
$write['extra_field_5'] = $extra_field_5;

*이제 write.skin.php에서 값을 출력해 보세요.

<div class="extra-info">
    <label for="extra_field_5">A 게시판 추가 정보:</label>
    <input type="text" id="extra_field_5" name="extra_field_5" value="<?php echo htmlspecialchars($write['extra_field_5']); ?>" readonly>
</div>

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

회원로그인

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