2010-07-15 6 views
0

페이지를 새로 고치거나 변경하지 않고 고객 주문 상태를 실시간으로 변경할 수있는 관리자 패널이 있습니다. 나는 Javascript, AJAX 또는 jQuery를이 용도로 사용해야한다는 것을 알았지 만, 그 경험이 없기 때문에 이것을 배우기 위해 도움을 요청하는 모든 것을 배울 시간이 없다.변경시 MySQL 행을 자동으로 업데이트

내 코드 :

<form> 
    <select name="status"> 
     <option value="0">Ej verifierad</option> 
     <option value="1">Väntar på betalning</option> 
     <option value="2">Postas ASAP</option> 
     <option value="3">POSTAD!</option> 
     <option value="4">Annulerad</option> 
    </select> 
</form> 

주문 상태는 MySQL 데이터베이스에 보관됩니다.

한 페이지에 여러 가지 양식이 있으며 변경하려는 경우 변경 사항을 직접 변경하기를 원합니다.

미리 답변 해 주셔서 감사합니다.

답변

3

확실히 jQuery를 사용하십시오. 그것은 AJAX 호출을 만드는 가장 쉬운 방법입니다 ... JavaScript에서 수행됩니다. 그래서 가장 좋은 대답은 3 가지가 모두 필요하다는 것입니다!

는 PHP 페이지가 POST 매개 변수를 허용하고, 대신 action="myFormResponder.php"method="post"하여 양식을 제출의 이러한 손상을두고 (닫는 </head> 태그 앞에) 웹 페이지의 상단에 이것을 넣어 유무 :

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
<script type="text/javascript"> 
    $(document).ready(function(){ 
     $('#myForm').submit(function(){ 
      $.post("myFormResponder.php",$('#myForm').serialize(), function(data, textStatus, xhr){ 
       // Do whatever you need here to update your page when the AJAX call finishes 
      }); 
      return false; // Cancel default submit action 
     }); 
    }); 
</script> 

또한 jQuery Documentation: $.post()을 참조하십시오. 이렇게하면 콜백에 전달 된 데이터로 작업하는 방법을 이해하는 데 도움이됩니다.

기본적으로 onsubmit 이벤트를 내 자신의 이벤트 처리기로 바꿨습니다. 당신이 선택 제어가 변경 될 때마다 응답하고 싶었다면, 대신이 같은 change() 이벤트에 핸들러를 첨부 :

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
<script type="text/javascript"> 
    $(document).ready(function(){ 
     // NOTE CHANGE IN NEXT TWO LINES 
     $('select').change(function(){ 
      $.post("myFormResponder.php",{status: $(this).val()}, function(data, textStatus, xhr){ 
       // Again, do what ya gotta do, if ya gotta do it 
      }); 
      return false; // Cancel default submit action 
     }); 
    }); 
</script> 
+0

윌 내가 한 페이지에 여러 형태가있을 경우이 작업? –

+1

jQuery는 매우 융통성이 있습니다. 페이지의 모든 양식을 동일하게 처리하거나 선택하면 ID로 특정 양식을 처리하거나 둘 다 조합 할 수 있습니다 ... 원하는 경우 일대일 작업을 할 수 있습니다 귀하의 세부 사항을 이메일로 보내 주시면 자세히 알려 드리겠습니다. 나는 자주 Gmail에서 aevins를 확인한다. 귀하의 질문에 대한 짧은 대답은 네라고 생각합니다. 작동하지만 PHP 스크립트와 DOM 구조에 모두 맞도록 실제 JavaScript 코드를 수정해야합니다. – virstulte

관련 문제