option 선택한 값을 sql문에 넣으려는데 변수를 어떻게 지정해줘야할까요?

option 선택한 값을 sql문에 넣으려는데 변수를 어떻게 지정해줘야할까요?

QA

option 선택한 값을 sql문에 넣으려는데 변수를 어떻게 지정해줘야할까요?

본문

<form name="fregisterform" action="javascript:doChangeSelect('3')" method="post" autocomplete="off">

                                <div style="display: flex; justify-content: center;" id="control">

                                    <div class="col-md-2 col-xs-3">

                                        <select id="srchArea1" name="area1">

                                            <option value="" selected>시도</option>

                                        </select>

                                    </div>

                                    <div class="col-md-2 col-xs-3">

                                        <select id="srchArea2" name="area2">

                                            <option value="" selected>군구</option>

                                        </select>

                                    </div>

                                    <div class="col-md-1 col-xs-3">

                                        <input class="main_bg" type="submit" value="검색">

                                    </div>

                                </div>

                            </form>

 

-------------------------------------------------------------------------------------------------------------

ajax를 이용해서 option 값을 불러오는거는 만들었습니다.

여기서 option 선택한 값을 sql문에 넣으려는데 변수를 어떻게 지정해줘야할까요?

이 질문에 댓글 쓰기 :

답변 3

function doSelectArea1() {
$.ajax({
type: "POST",
url: "<?php echo G5_URL ?>/estimate/ajax.area1.php",
data: {
"area1": $('#srchArea1').val()
},

 

이 부분이 말씀하신 해당 <select의 값을 가져 옵니다.

select값인 area1이랑 area2를 sql문에다가 넣고싶은데
이렇게 하면될까요?

$sql .= " and mb_id in ( select mb_id from {$g5['member_area_table']} where 1=1 and ( ( mb_area1 = '$srchArea1' and ifnull(mb_area2,'') = '' ) or ( mb_area1 = '$srchArea1' and mb_area2 = '$srchArea2'))) ";

ajax.area1.php
를 post 형태로 ajax 호출하셨습니다.

ajax.area1.php 안에서
include '_common.php'를 하셨다면

data: {
"area1": $('#srchArea1').val()
보내는 데이터가 이렇게 생겼으니

$area1 변수를 사용하시면 됩니다.

query문에서
mb_area1 = '$srchArea1'
이렇게 하실 거면

$.ajax({
type: "POST",
url: "<?php echo G5_URL ?>/estimate/ajax.area1.php",
data: {
"srchArea1": $('#srchArea1').val()
},

data 부분을 이렇게 고쳐야 합니다.

form post로 날리고 <option> 시도 아래로 value값이 지정되면 name area1로 받으면대져

ajax 호출 부분도 올려 보세요.

<script type="text/javascript">
var v_area1 = "<?php echo $searcharea1; ?>";
var v_area2 = "<?php echo $searcharea2; ?>";
jQuery(document).ready(function() {
doSelectArea1();
});

function doSelectArea1() {
$.ajax({
type: "POST",
url: "<?php echo G5_URL ?>/estimate/ajax.area1.php",
data: {
"area1": $('#srchArea1').val()
},
cache: false,
success: function(data) {
var fvHtml = "<option value=\"\" selected>시/도 전체</option>";
fvHtml += data;
$("#srchArea1").html(fvHtml);

if (v_area1) {
$("#srchArea1").val(v_area1);
v_area1 = "";
doSelectArea2();
} else {
fvHtml = "<option value=\"\" selected>시/구/군  전체</option>";
$("#srchArea2").html(fvHtml);
}
$('#srchArea1').change(function() {
doSelectArea2();
});
}
});
}

function doSelectArea2() {
$.ajax({
type: "POST",
url: "<?php echo G5_URL ?>/estimate/ajax.area2.php",
data: {
"area1": $('#srchArea1').val()
},
cache: false,
success: function(data) {
var fvHtml = "";
if ($("#srchArea1").val()) {
fvHtml += "<option value=\"\" selected>" + $("#srchArea1").val() + " 전체</option>";
} else {
fvHtml += "<option value=\"\" selected>시/도</option>";
}
fvHtml += data;
$("#srchArea2").html(fvHtml);
if (v_area2) {
$("#srchArea2").val(v_area2);
v_area2 = "";
}

}
});
}
</script>

입니다

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

회원로그인

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