끝났다~~ > 자유게시판

자유게시판

끝났다~~ 정보

끝났다~~

본문

어제 오후 부터 지금 까지 짠거에요~

자바 스크립트는 재대로 못다뤄서 고생했네요 ㅋㅋㅋㅋ

다하고 나니 뿌듯하다랄까....

아래소스는 필요하신분 부분 따서 쓰세요..


기능 설명 : 연락처를 입력하면 안보이던 div 2개 출력과 동시에 연락처에 따른 정보를 쿼리해서 이름과 주소를 뿌려줍니다. 클릭하면 input에 자동 마킹된다랄까....

70%는 자바스크립트 같네요 ㅎ.ㅎ;;;;;;;;;;;
모듈 : 또샵 구버전



<!--------------------------------- 오프라인 관리 추가 --------------------------------->
<p>
<style type="text/css">
td {vertical-align:top;}
#view {width:100%}
#view2 {width:100%}
</style>
<table cellpadding="0" cellspacing="0" border="0" width="100%" style="border:solid 1px #D7D7D7">
<tr bgcolor="#fbf8ee" style="border:1px; border-bottum:#000;" align="center">
<th colspan=6 style="padding-top:10px;padding-bottom:10px;">오프라인 구매 추가</th>
</tr>
<tr>
<td  colspan=6 height="1" bgcolor="#d7d7d7"></td>
</tr>
<tr bgcolor="#EFEFEF" style="padding-top:5px;padding-bottom:5px;" align="center">
<td>상품명</td>
<td>연락처</td>
<td>구매수량</td>
<td>주문일시</td>
<td>주문자명</td>
<td>주소</td>
</tr>
<tr>
<td  colspan=6 height="1" bgcolor="#d7d7d7"></td>
</tr>
<tr style="padding-top:10px;">
<td bgcolor="EFEFEF">
 <input type="text" name="shop_add_1" value="기정떡">
</td>
<td>
 <input type="text" name="shop_add_5" onChange="keytel()" value="<?=$_GET[num]?>">
</td>
<td bgcolor="EFEFEF">
 <input type="text" name="shop_add_3">
</td>
<td>
 <input type="text" name="shop_add_4" value="<?=$today_date_1?>">
</td>
<td bgcolor="EFEFEF">
 <input type="text" name="shop_add_2">
<div id="view2" style=" position:relative; z-index:1; border:#000000 1px solid; display:none;"></div>
</td>
<td>

 <input type="text" name="shop_add_6">
<div id="view" style=" position:relative; z-index:1; border:#000000 1px solid; display:none;"></div>

</td>
</tr>
<tr>
<td colspan="6" align="right">
 
</td>
</tr>
<tr>
<td colspan="6" align="right">
<button class="btn1" style="cursor:pointer;height:20px;width:45px" onMouseOver="shop_add()">확인</button>
</td>
</tr>
</table>
<script>
function shop_add() {
 
if (document.getElementById("shop_add_1").value == ""){
    alert("상품명을 입력하여 주십시오.");
           document.getElementById("shop_add_1").focus();
           return;
}
if (document.getElementById("shop_add_2").value == ""){
    alert("주문자를 입력하여 주십시오.");
           document.getElementById("shop_add_2").focus();
           return;
}
if (document.getElementById("shop_add_3").value == ""){
    alert("구매수량을 입력하여 주십시오.");
           document.getElementById("shop_add_3").focus();
           return;
}

if (document.getElementById("shop_add_4").value == ""){
    alert("주문일시를 입력하여 주십시오.");
           document.getElementById("shop_add_4").focus();
           return;
}

if (document.getElementById("shop_add_5").value == ""){
    alert("연락처를 입력하여 주십시오.");
           document.getElementById("shop_add_5").focus();
           return;
}
if (document.getElementById("shop_add_6").value == ""){
    alert("주소를 입력하여 주십시오.");
           document.getElementById("shop_add_6").focus();
           return;
} else {
//  location.reload();
//document.write('');
$shop_add_1 = document.getElementById('shop_add_1').value;
$shop_add_2 = document.getElementById('shop_add_2').value;
$shop_add_3 = document.getElementById('shop_add_3').value;
$shop_add_4 = document.getElementById('shop_add_4').value;
$shop_add_5 = document.getElementById('shop_add_5').value;
$shop_add_6 = document.getElementById('shop_add_6').value;
location.href = "./order_list_add.php?shop_add_1="+$shop_add_1+"&shop_add_2="+$shop_add_2+"&shop_add_3="+$shop_add_3+"&shop_add_4="+$shop_add_4+"&shop_add_5="+$shop_add_5+"&shop_add_6="+$shop_add_6;
}

}
</script>
<!-------------------------------- /오프라인 관리 추가/ -------------------------------->
<!-------------------------------- 정보 자동 입력 -------------------------------->

<script>
/*
 var cut = new String(document.getElementById('shop_add_5').value);
$("input").keyup(function(){
  var value = document.getElementById('shop_add_5').value;
  if (cut != value){
  window.location = "order_list.php?num=" + value + "#shop_add_5";
  return;
  }else{
              document.getElementById("shop_add_5").focus();
              document.getElementById("shop_add_5").value = document.getElementById("shop_add_5").value;
              return;
}
  }).keyup();
*/

function keytel(){
var value = document.getElementById('shop_add_5').value;
              window.location = "order_list.php?num=" + value + "#shop_add_3";
              return;
}
</script>
<?
/* 자바 스크립트~
<script>
function on1() {
    document.getElementById('2').value = document.getElementById('1').value;
if(document.getElementById('2').value != ""){
        document.getElementById("view").style.display='block';
        view.innerHTML = "<div id='view["+ i +"]'>"+ i +"</div>";
    }
}
</script>
*/
$myphon = $_GET[num]; // GET으로 받아온 핸드폰번호
if ($myphon == ""){
$myphon = "전화번호 없수다."; 
}
// 핸드폰 정보로 데이터 가져오기
$query_phon = "select * from g4_order where o_tel = '{$myphon}' or o_hp = '{$myphon}'";
$result_phon = mysql_query($query_phon);

 


///////////////////////////////////////////////////주소 불러와.//////////////////////////////////////////////////
echo "
<script>
var myphon = \"{$myphon}\";
if (myphon != \"\"){
  document.getElementById(\"view\").style.display='block';
  }

// document.getElementById('2').value = document.getElementById('1').value;
if(document.getElementById('shop_add_5').value != \"\"){
";

echo "view.innerHTML = \"";

//////////////////////////////////////////////////////////
for($i=0;$i< $phon_load = mysql_fetch_array($result_phon);$i++){
  echo "<div onclick='send{$i}()' id='{$i}' style=' border-bottom:#c4c4c4 1px solid;'><input type='hidden' name='view[{$i}]' value='".$phon_load[o_addr1]."'>".$phon_load[o_addr1]."</div>";
  }
echo "\";
";
//////////////////////////////////////////////////////////
echo "
}";
echo "</script>";

$menu_list = mysql_affected_rows(); // 강제로 갯수 출력

echo "
<script>";
for($i=0;$i < $menu_list; $i++){
  echo "function send{$i}() {";
  echo "document.getElementById('shop_add_6').value = document.getElementById('view[{$i}]').value;
  ";
  echo "document.getElementById(\"view\").style.display='none';";
  echo "}
  ";
  }

echo "</script>
";

 

 

 

 

 

$query_phon = "select * from g4_order where o_tel = '{$myphon}' or o_hp = '{$myphon}'";
$result_phon = mysql_query($query_phon);
//$phon_load = mysql_fetch_array($result_phon);

///////////////////////////////////////////////////이름 불러와.//////////////////////////////////////////////////
echo "
<script>
var myphon = \"{$myphon}\";
if (myphon != \"\"){
  document.getElementById(\"view2\").style.display='block';
  }

// document.getElementById('2').value = document.getElementById('1').value;
if(document.getElementById('shop_add_5').value != \"\"){
";

echo "view2.innerHTML = \"";

//////////////////////////////////////////////////////////
for($i=0;$i< $phon_load = mysql_fetch_array($result_phon);$i++){
  echo "<div onclick='send{$i}_2()' id='{$i}_2' style=' border-bottom:#c4c4c4 1px solid;'><input type='hidden' name='view[{$i}]_2' value='".$phon_load[o_name]."'>".$phon_load[o_name]."</div>";
  }
echo "\";
";
//////////////////////////////////////////////////////////
echo "
}";
echo "</script>";
$menu_list = mysql_affected_rows(); // 강제로 갯수 출력

echo "
<script>";
for($i=0;$i < $menu_list; $i++){
  echo "function send{$i}_2() {";
  echo "document.getElementById('shop_add_2').value = document.getElementById('view[{$i}]_2').value;
  ";
  echo "document.getElementById(\"view2\").style.display='none';";
  echo "}
  ";
  }

echo "</script>
";
?>
<!-------------------------------- /정보 자동 입력/ -------------------------------->

추천
0

댓글 2개

오호! 이런게 있군요.

onChange 이거 onkeydown 보다 어떤가요?

onChange="keytel()" 에서 onChange="keytel(this.value)" 로 넘기고

function keytel(){
var value = document.getElementById('shop_add_5').value;
에서

function keytel(value){
if(value.length > 5) { // 숫자 몇개 이상? 일때
// var value = document.getElementById('shop_add_5').value;
...
}
로 하면 어떨까요?
onChange를 사용 한이유를 말씀드리겠습니다.
저도 처음에는 onkeydown로 해서 했습니다만 소스 자체가 필드 입력마다 값을 새로 지정할경우 서버에 부담이 될수 있을것 같아서 포커스가 해당 필드에서 벗어 날때 한번에 값을 넘기게 설정했습니다.

또한 value.length > 5) 처럼 하지 않은 이유는 글자 수로 할경우 서버 렉때문에 값이 재대로 전송되지 않는 경우가 발생하여 저런식으로 온체인지만 쓰게 됬습니다.
전체 199,661 |RSS
자유게시판 내용 검색

회원로그인

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