끝났다~~ > 자유게시판

자유게시판

끝났다~~ 정보

끝났다~~

본문

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

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

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

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


기능 설명 : 연락처를 입력하면 안보이던 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) 처럼 하지 않은 이유는 글자 수로 할경우 서버 렉때문에 값이 재대로 전송되지 않는 경우가 발생하여 저런식으로 온체인지만 쓰게 됬습니다.
© SIRSOFT
현재 페이지 제일 처음으로