list.php 게시판 드롭다운과 파라미터값 연결하기
본문
3단계 드롭다운 최종선택시 (시 군 구)
게시판 리스트에서 파라미트 적용시 값을 받아서 해당 글 리스트를 보여주기~~!!
검색 버튼은 사용을하지 않고 파라미트 최종선택시
드롭다운 촤종 선택시 파리미터 값을 받아 리스트 해당 목록을 보여주기인데요
라이트의 글쓰기값은 당연히 디비로 저장하구요
리스트 목록에서 파리미터값 적용할려는데 참고 자료나 구현 코드가 어디 없을까요?
아시는분 계시면 참고 자료좀 부탁 드리겟습니다.~~ 적용파일 항목도 부탁 드리립니다.
답변 2
아래의 코드를 한번 참고를 해보시겠어요..
1. write 스킨
<!-- 글쓰기 폼에 추가 -->
<tr>
<th scope="row"><label for="sido">지역</label></th>
<td>
<select name="wr_1" id="sido" onchange="getSigungu(this.value)">
<option value="">시/도 선택</option>
<option value="서울">서울</option>
<option value="경기">경기</option>
<option value="부산">부산</option>
<!-- 나머지 시도 추가 -->
</select>
<select name="wr_2" id="sigungu" onchange="getGu(this.value)">
<option value="">시/군 선택</option>
</select>
<select name="wr_3" id="gu">
<option value="">구 선택</option>
</select>
</td>
</tr>
2. 리스트 스킨
<!-- 게시판 목록 상단에 추가 -->
<div class="region-filter" style="margin-bottom:20px;">
<form name="fregion" method="get" action="<?php echo $_SERVER['SCRIPT_NAME']; ?>">
<input type="hidden" name="bo_table" value="<?php echo $bo_table; ?>">
<select name="sido" id="sido" onchange="filterSigungu(this.value)">
<option value="">시/도 선택</option>
<option value="서울" <?php echo ($_GET['sido']=='서울')?'selected':''; ?>>서울</option>
<option value="경기" <?php echo ($_GET['sido']=='경기')?'selected':''; ?>>경기</option>
<option value="부산" <?php echo ($_GET['sido']=='부산')?'selected':''; ?>>부산</option>
</select>
<select name="sigungu" id="sigungu" onchange="filterGu(this.value)">
<option value="">시/군 선택</option>
</select>
<select name="gu" id="gu" onchange="this.form.submit()">
<option value="">구 선택</option>
</select>
</form>
</div>
<script>
// 페이지 로드 시 선택된 값 복원
window.onload = function() {
var sido = "<?php echo $_GET['sido']; ?>";
var sigungu = "<?php echo $_GET['sigungu']; ?>";
var gu = "<?php echo $_GET['gu']; ?>";
if(sido) {
filterSigungu(sido);
if(sigungu) {
document.getElementById('sigungu').value = sigungu;
filterGu(sigungu);
if(gu) {
document.getElementById('gu').value = gu;
}
}
}
};
// 지역 데이터
var regionData = {
"서울": {
"강남구": ["역삼동", "논현동", "삼성동"],
"강동구": ["천호동", "둔촌동", "암사동"],
"강북구": ["미아동", "번동", "수유동"]
},
"경기": {
"수원시": ["팔달구", "장안구", "권선구"],
"성남시": ["분당구", "수정구", "중원구"]
}
// 나머지 지역 데이터 추가
};
function filterSigungu(sido) {
var sigunguSelect = document.getElementById('sigungu');
var guSelect = document.getElementById('gu');
sigunguSelect.innerHTML = '<option value="">시/군 선택</option>';
guSelect.innerHTML = '<option value="">구 선택</option>';
if(sido && regionData[sido]) {
for(var sigungu in regionData[sido]) {
var option = document.createElement('option');
option.value = sigungu;
option.text = sigungu;
sigunguSelect.appendChild(option);
}
}
}
function filterGu(sigungu) {
var sido = document.getElementById('sido').value;
var guSelect = document.getElementById('gu');
guSelect.innerHTML = '<option value="">구 선택</option>';
if(sido && sigungu && regionData[sido][sigungu]) {
regionData[sido][sigungu].forEach(function(gu) {
var option = document.createElement('option');
option.value = gu;
option.text = gu;
guSelect.appendChild(option);
});
}
// 구 선택 시 자동 제출
document.forms['fregion'].submit();
}
</script>
db 와 ajax 를 활용하면 쉽고 편하고 빠르고 관리도 매우 편리하게 추가 삭제 할 수 있는 구조로 만들 수 있습니다.
안되시면 의뢰에 올려 보세요.
개인 적으로 연락 주시면 제작 가능 합니다.
필요하시면 카톡 kcbae1 연락 주세요