셀렉트박스 선택에 따라 DB선택

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
셀렉트박스 선택에 따라 DB선택

QA

셀렉트박스 선택에 따라 DB선택

답변 5

본문

안녕하세요

홈페이지 작업하다가 질문이 있습니다.

지금 문의폼 제작하고 있는데요 작성자는 문의 종류를 선택하고 선택에 따라 관련 DB에 글 남깁니다. 예를 들면, 문의 종류 A -> DB_1 작성, 문의 종류 B -> DB_2 작성. 목표는 사용자 눈의 보이게 문의를 구분하는 건데요

제가 생각하는 방법은 $_POST에서 셀렉트박스 값을 가져오고 if으로 DB 이름 선택됩니다.

 

<form>

<?php $value = $_POST['셀렋트밗_이름'];>

<?php if ((isset($value)) && ($value !== '셀렉트밗_값')) { ?>

<input type="hidden" name="bo_table" value="DB_1">

<?php } else { ?>

<input type="hidden" name="bo_table" value="DB_2">

<?php }>

</form>

 

이렇게 처리했고 바로 <form>에서 넣었지만 선택없이 다 같은 db에 넣었습니다. 그래서 이 부분을 어디서 아땋게 수정할지 아니면 더 좋은 구분 방법을 있는지 선생님들 좀 알려주시면 감사하겠습니다 ㅜㅜ

이 질문에 댓글 쓰기 :

답변 5

제거할 코드

<?php $value = $_POST['wr_2'];?>

 

<?php if ((isset($value)) && ($value !== 'lesson')) { ?>
<input type="hidden" name="bo_table" value="repair">
<?php } else { ?>
<input type="hidden" name="bo_table" value="classes">
<?php }>

 

제거한 자리에 추가할 코드

<input type='hidden' name='bo_table' id='bo_table' value='<?php echo $bo_table;?>'>

 

하단 자바스크립트 submit 함수에 추가

$('#bo_table').val( $('#wr_2').val() );

 

 

제거

if($_POST['bo_table_name']=="repair") $write_table="repair";
if($_POST['bo_table_name']=="classes") $write_table="classes";

 

 

 

 

<form>
<select name="table_name">
    <option value="DB_1">DB1</option>
    <option value="DB_2">DB2</option>
</select>
</form>

폼 전송 받는 페이지에서 $_POST["table_name"] 을 받아서 
$sql="INSERT  ".$_POST["table_name"]."  SET name1=val1,name1=val1 "
 sql 처리하시면 될듯 합니다.

제가 원하는 거는 조금 다른 것 같아요..
<form>
<select name="inquiry_name">
    <option value="문의_A">문의_A</option> -> 선택 시 모든 글 DB_1 작성
    <option value="문의_B">문의_B</option> -> 선택 시 모든 글 DB_2 작성
</select>
</form>

그리고 게시판 폼 사용해서 sql는 write_update로 처리되어있는데요 이렇게 하면 안 되나요??

write_update.php 파일을 말씀하시는 건가요?

네 맞습니다.
이렇게 처리했습니다.
바로 index.php 폼 넣고 write_udpate.php 와 연결시켰습니다.

<form name="fwrite" id="fwrite" action="http://[주소]/bbs/write_update.php"
                        onsubmit="return fwrite_submit(this);" method="post" enctype="multipart/form-data"
                        autocomplete="off">
                        <?php $value = $_POST['wr_2'];?>
                        <input type="hidden" name="uid" value="<?php echo get_uniqid(); ?>">
                        <input type="hidden" name="w" value="<?php echo $w ?>">
<?php if ((isset($value)) && ($value !== 'lesson')) { ?>
<input type="hidden" name="bo_table" value="repair">
<?php } else { ?>
<input type="hidden" name="bo_table" value="classes">
<?php }>
                        <input type="hidden" name="wr_id" value="<?php echo $wr_id ?>">
                        <input type="hidden" name="sca" value="<?php echo $sca ?>">
                        <input type="hidden" name="sfl" value="<?php echo $sfl ?>">
                        <input type="hidden" name="stx" value="<?php echo $stx ?>">
                        <input type="hidden" name="spt" value="<?php echo $spt ?>">
                        <input type="hidden" name="sst" value="<?php echo $sst ?>">
                        <input type="hidden" name="sod" value="<?php echo $sod ?>">
                        <input type="hidden" name="page" value="<?php echo $page ?>">
                        <input type="hidden" name="wr_password" id="wr_password" value="1234!!">
                        <input type="hidden" name="wr_name" id="wr_name" value="문의">
                        <input type="hidden" name="wr_subject" value="신청문의">
                        <div class="form__container">
                            <div class="form__left">
                                <div class="form__upper">
                                    <div class="left_form">
                                        <label for="wr_1" class="form-label">성함<span class="color__blue">*</span></label>
                                        <input name="wr_1" id = "wr_1" placeholder="홍길동" class="form-input" type="text">
                                    </div>
                                    <div class="right_form">
                                        <label for="wr_2" class="form-label">문의<span class="color__blue">*</span></label>
                                        <!-- <input name="wr_2" id = "wr_2" placeholder="시술명 선택" class="form-input" type="text"> -->
                                        <select name="wr_2" id = "wr_2" placeholder="문의 선택" >
                                            <option value="repair">수정문의</option>
                                            <option value="lesson">강의문의</option>
                                          </select>
                                    </div>
                                </div>
                                <label for="wr_3" class="form-label">전화번호<span class="color__blue">*</span></label>
                                <input name="wr_3" id = "wr_3" placeholder="*** 개인정보보호를 위한 휴대폰번호 노출방지 ***" class="form-input" type="text">
                                <label for="wr_content" class="form-label">문의사항</label>
                                <input name="wr_content" id = "wr_content" placeholder="문의사항은 여기에 적어주세요" class="form-input" type="text">
                            </div>
                            <input type="submit"  class="contact_from__btn" type="submit" id="btn_submit" value="작성완료">
                  </form>

<form name="fwrite" id="fwrite" action="http://[주소]/bbs/write_update.php" onsubmit="return fwrite_submit(this);" method="post" enctype="multipart/form-data" autocomplete="off">
<?php $value = $_POST['wr_2'];?>
    <input type="hidden" name="uid" value="<?php echo get_uniqid(); ?>">
    <input type="hidden" name="w" value="<?php echo $w ?>">
    <?php if ((isset($value)) && ($value !== 'lesson')) { ?>
        <input type="hidden" name="bo_table_name" value="repair">
    <?php } else { ?>
        <input type="hidden" name="bo_table_name" value="classes">
    <?php } ?>
        <input type="hidden" name="wr_id" value="<?php echo $wr_id ?>">
        <input type="hidden" name="sca" value="<?php echo $sca ?>">
        <input type="hidden" name="sfl" value="<?php echo $sfl ?>">
        <input type="hidden" name="stx" value="<?php echo $stx ?>">
        <input type="hidden" name="spt" value="<?php echo $spt ?>">
        <input type="hidden" name="sst" value="<?php echo $sst ?>">
        <input type="hidden" name="sod" value="<?php echo $sod ?>">
        <input type="hidden" name="page" value="<?php echo $page ?>">
        <input type="hidden" name="wr_password" id="wr_password" value="1234!!">
        <input type="hidden" name="wr_name" id="wr_name" value="문의">
        <input type="hidden" name="wr_subject" value="신청문의">
        <div class="form__container">
        <div class="form__left">
            <div class="form__upper">
                <div class="left_form">
                    <label for="wr_1" class="form-label">성함<span class="color__blue">*</span></label>
                    <input name="wr_1" id = "wr_1" placeholder="홍길동" class="form-input" type="text">
                </div>
                <div class="right_form">
                    <label for="wr_2" class="form-label">문의<span class="color__blue">*</span></label>
                    <!-- <input name="wr_2" id = "wr_2" placeholder="시술명 선택" class="form-input" type="text"> -->
                    <select name="wr_2" id = "wr_2" placeholder="문의 선택" >
                        <option value="repair">수정문의</option>
                        <option value="lesson">강의문의</option>
                      </select>
                </div>
            </div>
            <label for="wr_3" class="form-label">전화번호<span class="color__blue">*</span></label>
            <input name="wr_3" id = "wr_3" placeholder="*** 개인정보보호를 위한 휴대폰번호 노출방지 ***" class="form-input" type="text">
            <label for="wr_content" class="form-label">문의사항</label>
            <input name="wr_content" id = "wr_content" placeholder="문의사항은 여기에 적어주세요" class="form-input" type="text">
        </div>
        <input type="submit"  class="contact_from__btn" type="submit" id="btn_submit" value="작성완료">
</form>


:::::::::::::::::http://[주소]/bbs/write_update.php:::::::::::::::::
<?php
if($_POST['bo_table_name']=="repair") $write_table="repair";
if($_POST['bo_table_name']=="classes") $write_table="classes";

$sql = " insert into $write_table
                set wr_num = '$wr_num',
                     wr_reply = '$wr_reply',
                     wr_comment = 0,
                     ca_name = '$ca_name',
                     wr_option = '$html,$secret,$mail',
                     wr_subject = '$wr_subject',
                     wr_content = '$wr_content',
                     wr_link1 = '$wr_link1',
                     wr_link2 = '$wr_link2',
                     wr_link1_hit = 0,
                     wr_link2_hit = 0,
                     wr_hit = 0,
                     wr_good = 0,
                     wr_nogood = 0,
                     mb_id = '{$member['mb_id']}',
                     wr_password = '$wr_password',
                     wr_name = '$wr_name',
                     wr_email = '$wr_email',
                     wr_homepage = '$wr_homepage',
                     wr_datetime = '".G5_TIME_YMDHIS."',
                     wr_last = '".G5_TIME_YMDHIS."',
                     wr_ip = '{$_SERVER['REMOTE_ADDR']}',
                     wr_1 = '$wr_1',
                     wr_2 = '$wr_2',
                     wr_3 = '$wr_3',
                     wr_4 = '$wr_4',
                     wr_5 = '$wr_5',
                     wr_6 = '$wr_6',
                     wr_7 = '$wr_7',
                     wr_8 = '$wr_8',
                     wr_9 = '$wr_9',
                     wr_10 = '$wr_10' ";
    sql_query($sql);

?>
 

bo_table은 공통으로 쓰는 변수이기때문에
<input type="hidden" name="bo_table_name" value="repair">
<input type="hidden" name="bo_table_name" value="classes">

이렇게 name을 바꾸고 write_update.php 부분에 등록되는 $sql 찾으셔서 바로 위에 $write_table 을 지정해주시면 됩니다.

이해하셧죠?

write_update.php 파일 복사해서 올려주세요. 불편하시면 쪽지 주셔도 됩니다.

쪽지 보내면 '정보공개를 하지 않았습니다.' 오류가 뜹니다
혹시 개인정보 슴기세요?

제가 따로 확인해봤는데요 bo_table없을때 이 오류가 뜹니다.
write_update 제대로 수정하지 않아서 그럴까요?

<?php if ((isset($value)) && ($value !== 'lesson')) { ?>
        <input type="hidden" name="bo_table" value="repair">
        <input type="hidden" name="bo_table_name" value="repair">
    <?php } else { ?>
        <input type="hidden" name="bo_table" value="classes">
        <input type="hidden" name="bo_table_name" value="classes">
    <?php } ?>

이렇게 해보시고 안되면 쪽지 보내주세요.
정보 공개 풀었습니다.

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 60,079
© SIRSOFT
현재 페이지 제일 처음으로