광고배너

bo_table에 게시판 정보가져오기 어떻게 하나요?

bo_table에 게시판 정보가져오기 어떻게 하나요?

QA

bo_table에 게시판 정보가져오기 어떻게 하나요?

본문

아래와 같은 코드를 작성하여 bo_table에서 게시판 정보를 가져와서 배열로 저장하고자 합니다 그런데 정보를 가져와서 저장은 되는데 홈페이지가 깨져서 출력이 되질 않습니다  아래는 출력된 내용이고요 그 아래는 아래 내용을 출력하기 위한 코드입니다~ 어디가 문제 일까요?현재 처리 중인 bo_table: ai_qa
현재 처리 중인 bo_table: faq
현재 처리 중인 bo_table: free
현재 처리 중인 bo_table: gallery
현재 처리 중인 bo_table: notice
현재 처리 중인 bo_table: qa
현재 처리 중인 bo_table: tag
현재 처리 중인 bo_table: tip
게시판 ID: ai_qa, 이름: AI 와 문답 게시판
게시판 ID: faq, 이름: faq
게시판 ID: free, 이름: 자유게시판
게시판 ID: gallery, 이름: 갤러리
게시판 ID: notice, 이름: 공지사항
게시판 ID: qa, 이름: 질문답변
게시판 ID: tag, 이름: tag 게시판
게시판 ID: tip, 이름: Tip 게시판


<?php
 
// 게시판 id 추출
$result = sql_query('SELECT group_concat(bo_table) AS board_name FROM g5_board');
$row = sql_fetch_array($result);
 
// 게시판 ID 배열로 변환
$board_ids = explode(',', $row['board_name']); // ','로 구분된 문자열을 배열로 변환
 
//print_r($board_ids); // 게시판 ID 배열 출력
 
// 게시판 목록을 가져오는 코드
$boards = []; // 기본값으로 빈 배열 초기화
 
// 각 게시판 ID에 대해 정보를 가져오기
foreach ($board_ids as $bo_table) {
echo "현재 처리 중인 bo_table: {$bo_table}<br>"; // 현재 처리 중인 bo_table 출력
 
// bo_table과 bo_subject를 가져오는 쿼리로 수정
$result = sql_query("SELECT bo_table, bo_subject FROM g5_board WHERE bo_table = '{$bo_table}'");

 
while ($row = sql_fetch_array($result)) {
// bo_table과 bo_subject를 객체 형태로 배열에 추가
if (!empty($row['bo_subject'])) {
$boards[] = (object) [
'id' => $row['bo_table'], // bo_table을 ID로 사용
'name' => $row['bo_subject'] // bo_subject를 이름으로 사용
];
}
}
}
 
// 게시판 목록 출력 전에 배열의 상태 확인
 
foreach ($boards as $board) {
echo "게시판 ID: " . htmlspecialchars($board->id) . ", 이름: " . htmlspecialchars($board->name) . "<br>";
}
?>

화면상으로 오류가 없지만 페이지소스보기하면 가장 아래에 다음과 같은 오류뜹니다


b>Fatal error</b>:  Uncaught Error: Cannot use object of type stdClass as array in /var/www/html/theme/dw_bootstrap/skin/board/da_tag/list.skin.php:152
Stack trace:
#0 /var/www/html/bbs/list.php(269): include_once()
#1 /var/www/html/bbs/board.php(231): include_once('...')
#2 {main}
  thrown in <b>/var/www/html/theme/dw_bootstrap/skin/board/da_tag/list.skin.php</b> on line <b>152</b><br />

위에서 152 라인은  <caption><?php echo $board['bo_subject']; ?> 목 록</caption> 입니다

이 질문에 댓글 쓰기 :

답변 2

그누보드면 기본으로 현재 게시판에 대한 정보가 $board 변수에 배열로 들어가 있습니다. 따로 하실 필요가 없습니다.

기 사용중인 $board가 있어서 그런것같은데 foreach 쪽 $board를 $bd 형태로 변경해보시면 될것같습니다.

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

회원로그인

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