주소 자동찾기 프로그램 소스좀 살펴 주세요.
글쓴이: kimyh / 작성시간: 화, 2003/09/23 - 12:19오전
주소 자동찾기 프로그램을 좀 그렇긴 하지만 하나 삽질 해다 열심히 구현해보고 있는 중입니다.
그런데 워낙 맹탕이라 완성하기가 여간 어려운게 아니군요.
기능은
첫번째 select 박스에서 도, 직할시를 찾으면 다음 select 박스에 첫번째 select 박스에서 선택한 해당 시, 군, 구가 나와 선택 할 수 있게하고 두번째 select박스에서 시,군,구가 결정되면 세번째 select박스에서는 두번째 select박스에서 선택한 시,군,구 에 해당된 읍,면,동을 선택할 수 있게 하고자 합니다.
시도는 아래화일에서 직접 select 하고 두번째 시,군,구와 세번째 읍,면,동은 양이 많을것 같아 각각 sigun, dong,이라는 레코드에 db로 저장 한것에서 불러올려고 합니다 .
아래 화일의 내용을 갖은 책을 봐가며 독학(?)하고 있는데 쉽지가 않군요.
아래 내용중 function MySubmit(Form, Index) 의 Se.php의 내용이 어떤건지와 실제 db 내용을 어떤 형식으로 저장 해주어야 하는지 아시는분 도움좀 주세요.
아는게 없어 질문 내용이 좀 허접하군요. 죄송합니다.
<html> <head><title>주소찾기</title> <script language="JavaScript"> <!-- function MySubmit(Form, Index) { switch(Index) { case 1 : Form.action="Se.php?Flag=1"; break; case 2 : Form.action="Se.php?Flag=2"; break; case 3 : Form.action="Se.php?Flag=3"; break; default : } Form.submit(); } function SelectThis(Form) { var FormObject = eval("opener.document.form"); FormObject.address.value = Form.sido.value+" "+Form.sigun.value+" "+Form.dong.value; FormObject.sido.value= Form.sido.value; FormObject.sigun.value= Form.sigun.value; FormObject.dong.value= Form.dong.value; FormObject.ri.focus(); self.close(); } //--> </script> </head> <body bgcolor="#ffffff"> <? @extract($HTTP_GET_VARS); @extract($HTTP_POST_VARS); include_once ("../lib/dbcon.php"); ########## function function Error($ErrorCode) { switch ($ErrorCode) { case ("QueryError") : $ErrorNo = mysql_errno(); $ErrorMsg = mysql_error(); $ErrorMsg = "Error Code : " . $ErrorNo . "Error message : " . $ErrorMsg; $ErrorMsg = addslashes($ErrorMsg); echo($ErrorMsg); break; case ("DBError") : $ErrorNo = mysql_errno(); $ErrorMsg = mysql_error(); $ErrorMsg = "Error Code : " . $ErrorNo . "Error message : " . $ErrorMsg; echo($ErrorMsg); break; default : } } ########## connect your database.. if (!$db) { Error("DBError"); exit; } ########################################### init array $SidoName=array("--선 택--","-경기도-","-충청남도-","-충청북도-","-강원도-","-대전직할시-","-경상남도-","-경상북도-","-광주직할시-","-대구광역시-","-부산직할시-","-서울특별시-","-울산광역시-","-인천광역시","-전라남도-","-전라북도-","-제주도-"); switch($Flag) { ########################################### first start case 0 : echo("<form method=post>"); echo("<select name='sido' onChange='MySubmit(this.form, 1)'>"); $i=0; while( $SidoName[$i] ) { echo("<option value='$SidoName[$i]'>$SidoName[$i]</option>"); $i++; } echo("</select>"); echo("</form>"); break; ############################################ on change SelectedSidoName case 1 : ############################# unchange previous selected(Sido) $i=0; echo("<form method=post>"); echo("<select name='sido' onChange='MySubmit(this.form, 1)'>"); while($SidoName[$i]) { if( $sido != $SidoName[$i] ) { echo("<option value='$SidoName[$i]'>$SidoName[$i]</option>"); } else { echo("<option value='$SidoName[$i]' selected>$SidoName[$i]</option>"); } $i++; } echo("</select>"); echo ("ccccccccccccccccccccccccccccccc"); ############################### print Ggugun $Result = mysql_query("select distinct(sigun) from addressSearch where sido='$sido' order by sigun ASC", $sock); if (!Result) { Error("QueryError"); exit; } $GugunName = mysql_fetch_row($Result); echo("<select name='sigun' onChange='MySubmit(this.form, 2)'>"); while($GugunName) { echo("<option value='$GugunName[0]'>$GugunName[0]</option>"); $GugunName = mysql_fetch_row($Result); } echo("</select>"); echo("</form>"); break; case 2 : ############################### Sido, which is selected previous $i=0; echo("<form method=post>"); echo("<select name='sido' onChange='MySubmit(this.form, 1)'>"); while($SidoName[$i]) { if( $sido != $SidoName[$i] ) { echo("<option value='$SidoName[$i]'>$SidoName[$i]</option>"); } else { echo("<option value='$SidoName[$i]' selected>$SidoName[$i]</option>"); } $i++; } echo("</select>"); ############################### Gugun selected previous $Result = mysql_query( "select distinct(sigun) from addressSearch where sido='$sido' order by sigun ASC", $sock ); if (!Result) { Error("QueryError"); exit; } $GugunName = mysql_fetch_row($Result); echo("<select name='sigun' onChange='MySubmit(this.form, 2)'>"); while($GugunName) { if( $sigun != $GugunName[0] ) { echo("<option value='$GugunName[0]'>$GugunName[0]</option>"); } else { echo("<option value='$GugunName[0]' selected>$GugunName[0]</option>"); } $GugunName = mysql_fetch_row($Result); } echo("</select>"); ########################### Eupmyundong $Result1= mysql_query( "select distinct(dong) from addressSearch where sido='$sido' and sigun='$sigun' order by dong ASC", $sock ); if (!Result1) { Error("QueryError"); exit; } $EupmyundongName = mysql_fetch_row($Result1); echo("<select name='dong' onChange='MySubmit(this.form, 3)'>"); while($EupmyundongName) { if( $dong != $EupmyundongName[0] ) { echo("<option value='$EupmyundongName[0]'>$EupmyundongName[0]</option>"); } else { echo("<option value='$EupmyundongName[0]' selected>$EupmyundongName[0]</option>"); } $EupmyundongName = mysql_fetch_row($Result1); } echo("</select>"); echo("</form>"); break; ############################### case 3 : ############################### Sido, which is selected previous $i=0; echo("<form method=post>"); echo("<select name='sido' onChange='MySubmit(this.form, 1)'>"); while($SidoName[$i]) { if( $sido != $SidoName[$i] ) { echo("<option value='$SidoName[$i]'>$SidoName[$i]</option>"); } else { echo("<option value='$SidoName[$i]' selected>$SidoName[$i]</option>"); } $i++; } echo("</select>"); ############################### Gugun selected previous $Result = mysql_query( "select distinct(sigun) from addressSearch where sido='$sido' order by sigun ASC", $sock ); if (!Result) { Error("QueryError"); exit; } $GugunName = mysql_fetch_row($Result); echo("<select name='sigun' onChange='MySubmit(this.form, 2)'>"); while($GugunName) { if( $sigun != $GugunName[0] ) { echo("<option value='$GugunName[0]'>$GugunName[0]</option>"); } else { echo("<option value='$GugunName[0]' selected>$GugunName[0]</option>"); } $GugunName = mysql_fetch_row($Result); } echo("</select>"); ########################### Eupmyundong $Result1= mysql_query( "select distinct(dong) from addressSearch where sido='$sido' and sigun='$sigun' order by dong ASC", $sock ); if (!Result1) { Error("QueryError"); exit; } $EupmyundongName = mysql_fetch_row($Result1); echo("<select name='dong' onChange='MySubmit(this.form, 3)'>"); while($EupmyundongName) { if( $dong != $EupmyundongName[0] ) { echo("<option value='$EupmyundongName[0]'>$EupmyundongName[0]</option>"); } else { echo("<option value='$EupmyundongName[0]' selected>$EupmyundongName[0]</option>"); } $EupmyundongName = mysql_fetch_row($Result1); } echo("</select>"); ############################### default : echo("<form method=post>"); echo("<select name='sido' onChange='MySubmit(this.form, 1)'>"); $i=0; while($SidoName[$i]) { echo("<option value='$SidoName[$i]'>$SidoName[$i]</option>"); $i++; } echo("</select>"); echo("</form>"); ############################### } mysql_close(); ?> </body> </html>
Forums:
댓글 달기