programing

jQuery AJAX를 사용하여 여러 데이터 매개 변수 전송

elseif 2023. 3. 5. 09:34

jQuery AJAX를 사용하여 여러 데이터 매개 변수 전송

아래와 같이 php 파일로 ajax 요청을 보냅니다.

function checkDB(code, userid)
{

  $.ajax({
  type: "POST",
  url: "<?php bloginfo('template_url'); ?>/profile/check_code.php",
  data: 'code='+code+'userid='+userid,
  datatype: "html",
  success: function(result){

       if(result == 0)
        {
            $('#success').html( code + ' has been redeemed!');
            // alert('success');//testing purposes
        }
        else if(result == 2)
        {
            $('#err').html(  code + ' already exists and has already been redeemed....');
            //alert('fail');//testing purposes
        }else if(result == 1){
            $('#err').html(  code + ' redeem code doesnt exist');      
        }

        alert(result);      
      }
  })

}

이것은, 다음과 같이, 송신시에 함수를 호출해 송신됩니다.

<form method="post" class="sc_ajaxxx" id="sc_add_voucherx" name="sc_ajax"  
     onsubmit="checkDB(document.sc_ajax.sc_voucher_code.value, <?php echo $user_id ?>); return false;">
</form>

문제는 user id php 변수가 ajax에 의해 check_code.php 페이지로 전송되지 않거나 적어도 id를 페이지로 에코할 수 없다는 것입니다.

이것이 서버측 페이지에 여러 값을 전달하는 올바른 방법입니까?사용자 ID가 전달되지 않고 코드 전달만으로 정상적으로 작동합니다.

감사합니다 여러분:)

방법은 다음과 같습니다POST데이터는 포맷해야 합니다.

key1=value1&key2=value2&key3=value3

고객님의 경우 (주:&구분 기호로):

'code=' + code + '&userid=' + userid

그러나 데이터를 개체로 지정하면 jQuery가 이를 대신합니다.

data: { code: code, userid: userid }

세팅해야 합니다.data다음과 같이 합니다.

data: 'code='+code+'&userid='+userid

다음과 같이 시험해 볼 수 있습니다.

data: 'code='+code+'&userid='+userid,

대신

data: 'code='+code+'userid='+userid,

일반적으로 다음과 같이 데이터를 전송하면 도움이 됩니다.

data: { code: code, userid: userid }

잊지 말아야 할 가장 중요한 것은 보내는 변수의 이름이 서버 측에서 동일한지 확인하는 것입니다.

Linus Gustav Larsson Thiel의 답변은 버튼을 클릭했을 때 트리거되는 다음 &.ajax()를 사용했습니다.요일, 월, 연도 매개변수를 전달할 수 있습니다.

$('#convertbtn').on('click',function(){
ageddajax = $("#agedd").val();
agedmmajax = $("#agemm").val();
ageyyyyajax = $("#ageyyyy").val();
    if(ageddajax > 0 && agemmajax > 0 && ageyyyyajax >0){
    $.ajax({
        type:'POST',
        url:'ajaxDataAge.php',
        data:'agedd_id='+ageddajax +'&agemm_id='+agemmajax +'&ageyyyy_id='+ageyyyyajax,
            success:function(html){
            $('#cydivage').html(html);
            }
        });
    }   
});

이 코드를 사용해 보세요...그것은 나에게 효과가 있다...

<script type='text/javascript'>
$(document).ready(function(){
  $(".star").click(function(){
   var rate_value1= $(this).index(".star")+1;
    $.ajax({
    type: "POST",
    dataType: "json",
    url:  "<?php echo(rootpath()) ?>/vote.php",

data: { product_id: '<?php echo($product_id_to_permalink) ?>' , rate_value: rate_value1 }

        });
      });
    });
</script>       
 Try this code... 
    <script>
     function quote_ajax_table(){
       var doc_name = '<?php echo $test; ?>';
       var doc_no = '<?php echo $doc_no; ?>';

$.get('quote_ajax_table.php?doc_no='+doc_no+'&doc_name='+doc_name,function(data) {
   $('.dyna').html(data);
 });
}
</script>

//in html code 
  <div class="dyna"></div>

언급URL : https://stackoverflow.com/questions/9328743/sending-multiple-data-parameters-with-jquery-ajax