write.skin.php 글쓰기 에서 타게시판 연동관연

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
write.skin.php 글쓰기 에서 타게시판 연동관연

QA

write.skin.php 글쓰기 에서 타게시판 연동관연

본문

글쓰기에서 타게시판 제목을 가져와 select 의 옵션들로 나열해서 제목들을 선택할수있도록 해두었습니다.

 

<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
include_once(G5_LIB_PATH.'/thumbnail.lib.php');
// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨
add_stylesheet('<link rel="stylesheet" href="'.$board_skin_url.'/style.css">', 0);

global $is_member;
global $member;

$nick = $member['mb_nick'];
$mb_level = $member['mb_level'];
$query = sql_query("SELECT wr_subject, wr_id FROM g5_write_ji ORDER BY wr_id DESC");
?>

 

상단의 빨간부분 추가후

 <select  class="op_s1" name="wr_7" id="wr_7"  value="<?php echo $wr_7 ?>" style="float: left">
        
                <option value="<?php echo $wr_7 ?>"><?php echo $wr_7 ?></option>


            </select>
      
      <script language="JavaScript">
function ji(wr_7) {
    var 
    addr ={    
    '업체' : [<?php while($rows = sql_fetch_array($query)) { ?>'<?php  echo $rows['wr_subject'];?>',<?php } ?>],};

    this.wr_7 = document.getElementById('wr_7');
    var parent = this;

    makeOption('업체', this.wr_7);
    if (wr_7) this.wr_7.value = wr_7;

    function makeOption(idx, obj) {  
        var html = '<option value="">' + obj.options[0].text;+ '</option>';
        for (var i = 0; i<addr[idx].length; i++) 
            html += '<option value="'+addr[idx][i]+'">'+addr[idx][i]+'</option>';
        obj.innerHTML =  html;
    }
}

</script>    

        <script>
$(function(){     

 $("#wr_7").val("<?=$write['wr_7']?>");
});
$(function(){     

 $("#wr_7").val("<?=$update['wr_7']?>");
});
ji('<?php echo $wr_7?>');
</script>

 

위와같이 넣었습니다. 

여기서 질문은 디비가져오는것보시면 wr_id 도 같이 자져오고싶은데요. 문제는 

wr_subject 부분을 글쓰기에서 wr_7 로 저장되면서 wr_8 로 wr_id 를 저장하고싶습니다.

wr_subject  중 하나를 선택하면 그에 해당하는 wr_id 가 wr_8로 자동 저장되는것이죠..

머리를 짜도 제가 아직서툴러서 잘모르겠네요.. 

이 질문에 댓글 쓰기 :

답변 2

제가 스크립트는 아직 부족해서 제목만 뽑아서 옵션으로 돌리시려는게 맞으시다면 이렇게 해보세요.

 

이경우 스크립트는 안쓰셔도 될겁니다.

 

그리고 글쓰기할때만 적용입니다. 글 수정시에는 셀렉트 박스 선택 안하고 hidden에 저장..

 

write.skin.php 에서


<?php
$sql = "SELECT wr_subject, wr_id FROM g5_write_ji ORDER BY wr_id DESC";
$query = sql_query($sql);
$ji_option = "";
while ( $row = sql_fetch_array($query) ){
    $ji_option .= "<option value='".$row['wr_subject']."||".$row['wr_id']."'>".$row['wr_subject']."</option>";
} #END while
?>
 
<?php if($w=='') { ?>
<select name='wr78'  id='wr78'  class="op_s1" style="float: left">
<option value=''>업체선택</option>
<?php echo $ji_option; ?>
</select>
<?php }else{ ?>
<!-- 글 수정시 wr_7 과 wr_8 보존 -->
<input type='hidden' name ='wr_7' value=<?php echo $write['wr_7'] ?>> 
<input type='hidden' name ='wr_8' value=<?php echo $write['wr_8'] ?>> 
<?php } ?>

write_update.skin.php 에서


<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
 
if($w == ''){
$test = explode("||",$_POST['wr78']);
$wr_7 = $test[0];
$wr_8 = $test[1];
$sql = " update $write_table
            set wr_7 = '$wr_7',
                 wr_8 = '$wr_8'
          where wr_id = '$wr_id' ";
sql_query($sql);
}
?>

제가 하는 방식으로 설명드리면 

제목 선택용 <select 를 하나 생성하고 

php for문으로 게시판 제목 목록을 가져와서 

 

<select id='select_subject'>

<?php for($i= 0; $rows~~~~; $i++){ ?>

<option value='<?php echo $rows['wr_subject']?>' data-wr_id= '<?php echo $rows['wr_id']?>'>$rows['wr_subject']</option>

<?php } ?>

 

이런식으로 하면 제목 선택용 select 및 option이 생성됩니다.

 

간단하게 jquery #select_subject change 이벤트가 있으면 wr_7에 제목을 넣어주고 wr_8에는

jquery data 값을 읽어와서 wr_8에 data-wr_id 값을 넣어주면 될듯 합니다.

https://snowple.tistory.com/379

https://dololak.tistory.com/576

참고해 보세요.

 

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

회원로그인

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