여분필드 주소 넣어 입력후 출력은 잘 되는데 수정에 들어가면 초기화 되어 보입니다.
본문
혼자서 해결해 보려고 이틀동안 검색해 보고 찾아봤는데 도저희 안되네요..^^;
선배님들의 고견을 듣고 싶습니다.
일단, 제목에서 처럼 입력하고 출력은 정상으로 되는데 수정만 누르면 없어져서 다시 입력을 해야 합니다.
뭐가 잘못 되었을까요??
우문에 선배님들의 현답을 부탁 드려 봅니다.
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 (값) ? 값 : '';?>
수정부분에서 $write 배열에 해당 데이터 있는지 채크해보세요.
value="<?php echo $write[ex_addr1]; ?>"
어차피 해당 데이터가 없으면 공란으로 나올거니
따로 쓰기/수정 분기는 안하셔도 됩니다.
답변을 작성하시기 전에 로그인 해주세요.