뷰페이지에서 게시판 카테고리 옆에 게시판목록을 셀렉트 박스로 쓰고싶습니다.

뷰페이지에서 게시판 카테고리 옆에 게시판목록을 셀렉트 박스로 쓰고싶습니다.

QA

뷰페이지에서 게시판 카테고리 옆에 게시판목록을 셀렉트 박스로 쓰고싶습니다.

본문

보통 카테고리가 1차카테 2차카테고리가 있는데

저는 1차카테고리안에 있는 게시글목록을 바로 셀렉트박스에 넣어 이동시키고 싶습니다.

 

예를들어

 

딸기 > a게시글, b게시글, c게시글

포도 > a게시글, b게시글

 

해당카테고리에 있는 게시글목록을 바로 불러와서 셀렉트박스를 선택하면 바로이동할 수 있게요..

팁이 있을까요

이 질문에 댓글 쓰기 :

답변 2

이걸 참고해 보세요~


1. HTML 파일에서 셀렉트 박스와 목록을 표시할 영역을 준비

 

<select id="categorySelect">
  <option value="">카테고리 선택</option>
  <!-- 1차 카테고리 옵션들 -->
</select>

<select id="postSelect">
  <option value="">게시글 선택</option>
  <!-- 해당 카테고리의 게시글 목록 옵션들 -->
</select>

 

2.JavaScript에서 1차 카테고리 선택 시 해당 카테고리에 있는 게시글 목록을 AJAX로 가져와서 셀렉트 박스에 추가

 

$(document).ready(function() {
  // 1차 카테고리 변경 시 이벤트 처리
  $("#categorySelect").change(function() {
    var selectedCategory = $(this).val();
    if (selectedCategory !== "") {
      // AJAX 요청으로 해당 카테고리의 게시글 목록 가져오기
      $.ajax({
        url: "get_posts.php", // 게시글 목록을 가져올 PHP 파일 경로
        method: "POST",
        data: { category: selectedCategory },
        dataType: "json",
        success: function(response) {
          if (response.success) {
            var postOptions = "";
            $.each(response.posts, function(index, post) {
              postOptions += '<option value="' + post.id + '">' + post.title + '</option>';
            });
            // 게시글 목록을 셀렉트 박스에 추가
            $("#postSelect").html('<option value="">게시글 선택</option>' + postOptions);
          }
        }
      });
    } else {
      // 1차 카테고리가 선택되지 않은 경우 게시글 셀렉트 박스 초기화
      $("#postSelect").html('<option value="">게시글 선택</option>');
    }
  });
});

 

 

3. PHP 파일 에서 AJAX 요청을 처리하여 해당 카테고리에 있는 게시글 목록을 반환


<?php
// DB 연결 등 필요한 설정 수행

if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $selectedCategory = $_POST["category"];
  
  // 선택된 카테고리에 해당하는 게시글 목록을 DB에서 가져오는 로직 작성
  
  // 가져온 게시글 목록을 JSON 형식으로 반환
  $response = array(
    "success" => true,
    "posts" => array(
      array("id" => 1, "title" => "a게시글"),
      array("id" => 2, "title" => "b게시글"),
      array("id" => 3, "title" => "c게시글")
    )
  );
  
  echo json_encode($response);
  exit;
}
?>


 

view.skin.php

적당한 곳에

<select 
onchange="location.href='?bo_table=<?=$bo_table?>&wr_id='+this.value;" ><?php
$r0=sql_query("select wr_id, wr_subject from $write_table where ca_name='$sca' and wr_is_comment=0");
while( $r1= sql_fetch( $r0)){
Echo '<option value="', $r1['wr_id'],'" >', $r1['wr_subject'],'</option>';
}
?></select>

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

회원로그인

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