게시판에서 우편번호검색 기능 사용하기 방법 좀..;; > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

게시판에서 우편번호검색 기능 사용하기 방법 좀..;; 정보

게시판에서 우편번호검색 기능 사용하기 방법 좀..;;

본문

단순 주문 게시판을 만들려고 합니다.
배송주소를 입력하게 하기 위해서 회원가입시 우편번호검색 기능을 쓸려고 하는데 이게 영 안되는군요..ㅜㅜ
 
아래와 같은 소스를 사용해서 검색창을 띄우는 것까지는 되는데 원하는 주소를 클릭하여도 아무런 변화가 없습니다.
 
 
 
<tr>
    <td style='padding-left:20px; height:30px;'>· 배송주소</td>
    <td>
<input class=ed size="4" name=wr_1 itemname="우편번호 앞자리" required readonly value="<?=$write[wr_1]?>"> -
<input class=ed size="4" name=wr_2 itemname="우편번호 뒷자리" required readonly value="<?=$write[wr_2]?>">
<a href="javascript:;" onclick="win_zip('fwrite', 'wr_1', 'wr_2', 'wr_3', 'wr_4');"><img src="<?=$board_skin_path?>/img/post_search_btn.gif" align=absMiddle border=0></a>
<input class=ed size="40" maxLength=60 name=wr_3 itemname="주소" required readonly value="<?=$write[wr_3]?>"><br />
상세주소 : <input class=ed size="40" maxLength=40 name=wr_4 itemname="상세 주소" value="<?=$write[wr_4]?>">
 
 
관련팁을 찾아 그누보드 뿐만 아니라 php스쿨까지 뒤져봤습니다. 몇개 보긴 했는데 도무지 적용이 안되는군요.
꼭 이런 방식이 아니더라도 좋으니 이런거 구현하신 분 있으면 좀 알려주십시오. 흑..
 
정 안되면 게시판 스킨 중 다중카테고리 팁이라도 응용할 생각...;;;
  • 복사

댓글 전체

구현하시고자 하는 대다수의 내용은,
gnu3.xx의 정모프로그램의 상당부분이 해당됩니다.

관련내용 : http://www.sir.co.kr/bbs/board.php?bo_table=cm_free&wr_id=11486&sca=&sfl=wr_subject&stx=%C1%A4%B8%F0&sop=and&spt=-5132

최후의 정모는 0.71버전에서 그 업그레이드가 종료되었다고 기억하고 있습니다.
미리보기는 root님 홈페이지 최상단 메뉴를 참조해 주시기 바랍니다.
저 또한 관리자님께서 이전에 공개해 주신 '소재지 셀렉트 박스'를 찾아 보았으나,
그것은 본 내용과는 매치되지 않는 형태로 구현되어 있습니다.
파일 하나에 전체적인 우편번호에 대한 각 지역이 option value~와 같은 형태로 기재되어 있기 때문입니다.

> 아래와 같은 소스를 사용해서 검색창을 띄우는 것까지는 되는데 원하는 주소를 클릭하여도 아무런 변화가 없습니다.
'헐랭이'님께서 이미 언급해 주셨듯이 name속성에 동일한 내용이 기재되어 있다면 아무런 변화가 보이지 않습니다.
...
이하는 비슷한 맥락이기에 줄입니다.
정모에서 값을 넘겨줌과 동시에 DB에서 우편번호를 끌어오는 방식을 참조하고 싶으시거나,
jungmo0.71의 소스파일 내용을 참조하고 싶으시다면...
(참... 배포가 중지되었겠군요.)

궁금해 하시는 사항은 jungmo.php와 이것의 액션을 담당하는 jungmo_update.php에 기재되어 있습니다.
지구인님의 소스코드는 DB에 저장되는 내역까지도 모두 정상적으로 작동합니다.

/skin/board/스킨이름/write.skin.php의 다음과 같이 <form>태그 내부에 기재하십시오.
물론, write_update.skin.php에서 추가된 필드의 변화(즉, if ($w=='u') { )가 있다면 그것을 고려해야 합니다.

찾아보기 쉽게 편의상 제목입력줄의 소스코드까지 포함합니다.

<tr>
    <td style='padding-left:20px; height:30px;'>· 제목</td>
    <td><input class="field_pub_01" style="width:100%; height:18px;" name=wr_subject id="wr_subject" itemname="제목" required value="<?=$subject?>"></td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<tr>
    <td style='padding-left:20px; height:30px;'>· 배송주소</td>
    <td><input class=ed size="4" name=wr_1 itemname="우편번호 앞자리" required readonly value="<?=$write[wr_1]?>"> -
<input class=ed size="4" name=wr_2 itemname="우편번호 뒷자리" required readonly value="<?=$write[wr_2]?>">
<a href="javascript:;" onclick="win_zip('fwrite', 'wr_1', 'wr_2', 'wr_3', 'wr_4');"><img src="<?=$board_skin_path?>/img/post_search_btn.gif" align=absMiddle border=0></a><br>
<input class=ed size="40" maxLength=60 name=wr_3 itemname="주소" required readonly value="<?=$write[wr_3]?>"><br>
상세주소 : <input class=ed size="40" maxLength=40 name=wr_4 itemname="상세 주소" value="<?=$write[wr_4]?>">
    </td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
쪽지 확인해 보시기 바랍니다.
아쉬운 부분이 있다면,
회원일 경우 회원정보와 배송지 정보가 같다면,
checkbox 하나만으로 회원DB에 저장된 내용을 끌어오는 방식도 필요할 것 같습니다.
(이 부분은 g4스킨 수발들라 스킨에서 회원의 정보를 끌어오는 방식을 응용하시면 됩니다.)
감사합니다. 쪽지에서도 말씀드렸지만 write.skin.php 안에서 습관처럼 여분필드를 설정해줬었는데 이게 문제였던 거 같네요. 아래 코드를 삭제하니까 되는군요^^;
<input type=hidden name=wr_7    value="<?=$wr_7?>">
<input type=hidden name=wr_8    value="<?=$wr_8?>">
<input type=hidden name=wr_9    value="<?=$wr_9?>">
<input type=hidden name=wr_10  value="<?=$wr_10?>">
여분필드는 특별히 폼값을 따로 전송하지 않아도,
/bbs/write.php, /bbs/write_update.php 에서 변수를 끌어오기 때문에,
발생되었을 가능성이 있습니다.
미리보기는 쪽지로 전송해 드린 페이지를 참조해 보시거나,
이전의 회원아이디로 접속 후 테스트 해 보시기 바랍니다.

직전의 코멘트에서 밝힌 바,
'회원정보 == 배송지'에 관해서는 테스트 하지 않았습니다.
아래소스 참고가 되실지 모르겠네요.
분석해보시면 답이 나올듯


<?
// 주소입력처리하는 여유필드(기존의 'wr_3' 여유필드를 다시 쪼개서 확장필드로 만듬)
//[참고] 여유필드를 업데이트하기 위해서는 'write_update.skin.php' 를 사용함

$ex3_filed = explode("|",$write[wr_3]);
$ext3_00  = $ex3_filed[0];
$ext3_01  = $ex3_filed[1];
$ext3_02  = $ex3_filed[2];
$ext3_03  = $ex3_filed[3];
?>

    <table width="100%" border="0" cellspacing="0" cellpadding="0">

    <tr><td height="25">
<input class=ed type=text name='ext3_00' value='<?=$ext3_00?>' size=4 maxlength=3 readonly <?=$config[cf_req_addr]?'required':'';?> itemname='우편번호 앞자리'>
      -
      <input class=ed type=text name='ext3_01' value='<?=$ext3_01?>' size=4 maxlength=3 readonly <?=$config[cf_req_addr]?'required':'';?> itemname='우편번호 뒷자리'>
      &nbsp;<a href="javascript:;" onclick="win_zip('fwrite', 'ext3_00', 'ext3_01', 'ext3_02', 'ext3_03');"><img  src="<?=$board_skin_path?>/img/icon_addr.gif" height=19 width=85 align='absmiddle' border=0></a>
</td></tr>

<tr><td height="25" colspan="2">
<input class=ed type=text name='ext3_02' value='<?=$ext3_02?>' size=60 readonly <?=$config[cf_req_addr]?'required':'';?> required itemname='주소'>
</td></tr>

    <tr><td height="25" colspan="2">
<input class=ed  type=text name='ext3_03'  value='<?=$ext3_03?>' size=60 <?=$config[cf_req_addr]?'required':'';?> required itemname='상세주소'>
&nbsp;<font color=#999999>(상세주소 or 위치)</font>
</td></tr>

    </table>

위녀석을 응용해서 수정하지 않고 고대로 사용하실라면
'write_update.skin.php' 파일을 아래와 같이 만들어 주어야 할껍니다.
테스트 해보지 않아서 확신은 못합니다.

<?

if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

// 자신만의 코드를 넣어주세요.

$wr_3 = "$ext3_00|$ext3_01|$ext3_02|$ext3_03";
$sql3 = " update $write_table set wr_3 = '$wr_3' where wr_id = '$wr_id' ";
sql_query($sql3);

?>


혹시 이 소스로 해결 되시거들랑 위 제 질문좀 답변 부탁합니다.
실력이 대단하신걸로 알고 있거든요.
지구인님의 우편번호 찾기 코드는 별문제가 없어 보입니다.
클릭시 아무런 변화가 안나온다는 부분은 여분필드명이 현재적용된 부분외에
다른곳에도 있지않나 예상이 됩니다. 중복으로 필드name이 존재 하는지 확인해 보세요.

팝업창에서 부모창의 해당 필드로 값을 넘겨줄때
필드명이 중복으로 된곳이 있으면 에러도 없고 아무런 반응이 없습니다.
헐랭이님 말씀을 보고 중복필드네임이 있는지 찾아봤는데 아무리 봐도 없는 거 같습니다.
혹시나 해서 필드를 wr_7 ~ wr_10으로 고쳐보기까지 했는데 여전히 안되는군요.
제가 중복필드name을 잘못 이해하고 있는건지...ㅡㅜ
© SIRSOFT
현재 페이지 제일 처음으로