여분필드 주소 넣어 입력후 출력은 잘 되는데 수정에 들어가면 초기화 되어 보입니다.

여분필드 주소 넣어 입력후 출력은 잘 되는데 수정에 들어가면 초기화 되어 보입니다.

QA

여분필드 주소 넣어 입력후 출력은 잘 되는데 수정에 들어가면 초기화 되어 보입니다.

본문

혼자서 해결해 보려고 이틀동안 검색해 보고 찾아봤는데 도저희 안되네요..^^;

선배님들의 고견을 듣고 싶습니다.

일단, 제목에서 처럼 입력하고 출력은 정상으로 되는데 수정만 누르면 없어져서 다시 입력을 해야 합니다.

뭐가 잘못 되었을까요??

 

우문에 선배님들의 현답을 부탁 드려 봅니다.

 


write.skin.php 에 하단 처럼 입력
 
    <script src="https://spi.maps.daum.net/imap/map_js_init/postcode.v2.js"></script> 
    <li class="list-group-item">
        <div class="form-group row mb-30">
          <div class="write_div">
           <label class="col-md-2 col-form-label" for="ex_jibeon">주소<strong class="sr-only">필수</strong></label>
            <div class="col-md-12">  
            <label for="ex_zip" class="sound_only">우편번호</label>
              <input type="text" name="ex_zip" value="<?php echo $ex_zip; ?>" id="ex_zip"  class="frm_input" size="9" maxlength="6">
               <button type="button" class="btn_frmline" onclick="win_zip('fwrite', 'ex_zip', 'ex_addr1', 'ex_addr2', 'ex_addr3', 'ex_jibeon');">주소 검색</button><br>
        <div style="margin-top:5px; margin-bottom:5px;"></div>
                 <input type="text" name="ex_addr1" value="<?php echo $ex_addr1; ?>" id="ex_addr1" class="frm_input frm_address" size="50" class="searchtext" name="s" placeholder="기본주소" value="" />
        <div style="margin-top:5px; margin-bottom:5px;"></div>
                 <input type="text" name="ex_addr2" value="<?php echo $ex_addr2; ?>" id="ex_addr2" class="frm_input frm_address" size="50" class="searchtext" name="s" placeholder="상세주소 입력" value="" />
        <div style="margin-top:5px; margin-bottom:5px;"></div>
                 <input type="text" name="ex_addr3" value="<?php echo $ex_addr3; ?>" id="ex_addr3" class="frm_input frm_address" size="30" class="searchtext" name="s" placeholder="(지역구분)" readonly="readonly">
                 <input type="hidden" name="ex_jibeon" value="<?php echo $ex_jibeon; ?>">
            </div>
          </div>  
        </div>
    </li>
        
 
view.skin.php 에다 하단처럼 추가
 
<i class="fa fa-check-square" aria-hidden="true"></i> 주소 : <?php echo $ex_zip.' '.$ex_addr1.' '.$ex_addr2.$ex_addr3; ?>
 
 
write.update.head.skin.php 에다 하단 처럼 추가
( 나리야 여서 write.update.skin.php 가 안보여 이곳에 넣었습니다. )
 
// 주소
$wr_1 = "$ex_zip|$ex_addr1|$ex_addr2|$ex_addr3|$ex_jibeon";
sql_query(" update $write_table set wr_1 = '$wr_1' where wr_id = '$wr_id' ");
 

이 질문에 댓글 쓰기 :

답변 3

내용은 이거랑 비슷해 보이는데
https://gnustudy.com/bbs/board.php?bo_table=skin_board&wr_id=22

 

wr_1 필드에 배열로 집어 넣었으니..

write.skin.php 파일에서 아래 내용 같은 부분들이 누락되어 있네요.

 

// 주소입력
$addr = explode('|',$write['wr_1']);
$ex_zip  = $addr[0];
$ex_addr1  = $addr[1];
$ex_addr2  = $addr[2];
$ex_addr3  = $addr[3];
$ex_jibeon  = $addr[4];

역시~!!!  선배님 이십니다....^^;
알려주신 방법으로 하니 적용이 되었습니다.
뭐라 감사의 말씀을 드려야 할지....

노숙인자활시설 관련 작업을 해드리고 있는데 주소 입력란 때문에 몇일을 고생했는데  한번에 해결해 주셨네요.
다시한번 진심으로 감사 드립니다.

보통 이런 경우는 value 처리를 제대로 안 해서 그렇습니다.

아래 형식으로 수정해 보세요.

 

수정 전: <?php echo 값;?>

수정 후: <?php <?php echo (값) ? 값 : '';?>

<?php echo (값) ? 값 : '';?>
이렇게 수정하시면 되세요.
예를 들어,
value="<?=$write[ex_addr1]?> 경우, 아래처럼 수정하시면 됩니다.
value="<?php echo ($write['ex_addr1']) ? $write['ex_addr1'] : '';?>

ps. view.skin.php 파일도 수정해야...

늘 감사한 맘 갖고 있습니다.
알려주신 방법으로 진행해 보겠습니다.
사실 주먹구구식 으로 해보고 있지만, 참 재밋는것 같습니다...^^;

뷰스킨 부분도 솔직히 잘 모르겠지만 나름 연구해 보고 안되면 한번 더 여쭤보겠습니다~~ !!

수정부분에서 $write 배열에 해당 데이터 있는지 채크해보세요.

value="<?php echo $write[ex_addr1]; ?>"

 

어차피 해당 데이터가 없으면 공란으로 나올거니

따로 쓰기/수정 분기는 안하셔도 됩니다.

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

회원로그인

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