2013-12-23 2 views
1

안녕하세요 저는 시간이 지나면 ajax를 사용하여 PHP 파일을 호출합니다. 내 PHP 파일에서 난 단순히 텍스트 줄을 에코. 하지만 .. 여기 ajax를 사용하여 PHP 스크립트 호출하기

내가 내 PHP 파일을 호출하고 내 아약스 코드 형태입니다 .. 나에게 process.php 파일 내의

<script> 

$(document).ready(function() { 
    setTimeout(function() { 
     $.ajax({ 
     url: 'process.php',  
     type: 'post',  
     data: {"token": "your_token"}, }); 
    }, 5000); 
}); 

</script> 

코드를 시간 간격 후 출력을 보여 didnt는

<?php 

echo "hello testing"; 

?> 
+5

응답이 없습니다. 'success' 콜백이 필요합니다. –

+0

어디에서 전화하십니까? 예를 들어 크롬에서는 파일 시스템에서로드 된 HTML 파일에서 웹 서버로 Ajax를 수행 할 수 없습니다. (그리고 콜백이 필요합니다.)) – mplungjan

+0

Jquery ajax에서는 서버 측 (PHP 스크립트)에 에코 된 데이터를 캡처하는 데 사용되는 특정 매개 변수가 있습니다 (즉, 성공 :'). 이'$ 아약스 ({: "POST", URL : "some.php" 데이터 : {이름 : "존", 위치 : 유형 "보스턴"} })와 같은 되는 .done (기능 (MSG) ** ** ref : http://api.jquery.com/jQuery.ajax/** – dreamweiver

답변

0

사용자 ajax의 성공과 오류 기능. 예 :

$.ajax ({ 
    url: 'process.php', 
    type:'post' 
    data:data1, 

    success: function (response) { 
    //alert response here you will get the value hello testing 
    alert (response); 
    }, 

error { 
alert ('error'); 
} 

}); 
2

PHP 스크립트의 응답을 처리하지 않습니다. ajax에서 success 매개 변수로 가져와야합니다. 이것을 시도하십시오 :

$(document).ready(function() { 
setTimeout(function() { 
    $.ajax({ 
     url: 'process.php',  
     type: 'post',  
     data: 'x=1&y=2', // data here! use query strings like this or; 
    // data: { x: '1', y: '2' } 
     success: function(response) { alert(response); } // alert the response text 
            // returns 'hello testing' 
     error: function(){ alert('error while posting data'); } 
    }); 
}, 5000); 
}); 
+0

나는 데이터베이스에 데이터를 추가하기 위해 PHP 파일에서 함수를 실행하려고한다. 그것은 성공을 사용하지 않고 끝날 것인가 ?? –

+0

예. 성공은 파일의 응답 만 처리하는 것입니다. 성공한 응답 (200 http 코드)을 얻으면 요청이 PHP 파일로 전송되었는지 100 % 확신 할 수 있습니다. – Robert

+0

porcess.php 파일에서 쿼리 문자열을 사용하여 변수 값을 보낼 수 있습니까? 예 : process.php? x = 1 & y = 2 –

-1

PHP 페이지는 "hello testing"문자열을 보내고 관리해야합니다.

는 예를 들어, 여기 좀 봐 : 당신은 응답을 사용하도록 코드를 수정해야 click me

0

.

<script> 

$(document).ready(function() { 
    setTimeout(function() { 
     $.ajax({ 
     url: 'process.php',  
     type: 'post',  
     data: {"token": "your_token"}, 
    success:function(str){ 
$("#YOUR_ELEMENT").html(str); 
} 
}); 

}, 5000); 

});

0

그냥 그것을 할() 또는 성공의 기능을 수행 할 수 있습니다 성공적으로 요청 후 응답을 보여 당신의 JQuery와 스크립트를 변경합니다.

<script> 

$(document).ready(function() { 
    setTimeout(function() { 
     $.ajax({ 
     url: 'process.php',  
     type: 'post',  
     data: { token: "your_token"}}).done(function(msg){ 
       $("#response").append(msg); 
     }; 
    }, 5000); 
}); 

아약스 요청이 성공하면 모든 5 초를 #response하는 reponses을 추가합니다.

0

원격 스크립트에서 반환 된 데이터를 처리하는 성공 블록이 코드에 있습니다. 이런 것을 추가해야 할 수도 있습니다.

JS 코드 :

$(document).ready(function() { 
    setTimeout(function() { 
    $.ajax({ 
    url: 'process.php',  
    type: 'post',  
    data: {"token": "your_token"}, 
    }).done(function(data) { 
       //data received from remote script 
      }); 
    }, 5000); 
}); 

해피 코딩 :)

0

시간 초과 여기에 범인이 아니다.

  • process.php이 상주하고 정상적으로 작동하는 서버가 있는지 확인해야합니다.
  • process.php 파일의 경로가 올바른지 확인하십시오. 브라우저의 개발자 도구를 사용할 수 있습니다. 요청이 있으면 개발자 도구의 '네트워크'탭 아래에 새 항목이 표시됩니다. 그것을 탐색하면 파일을 사용할 수있는 URL을 얻을 수 있습니다.

Google 크롬의 "우편 배달"확장 프로그램을 사용하여 코드에 구현하기 전에 ajax 호출을 테스트 할 것을 제안합니다.

또한 요청 성공 또는 실패시 실행할 콜백이 있어야합니다. 일단 성공 응답으로 문자열을 얻으면, 당신이 의도 한대로 그것을 할 수 있습니다.

<script> 

    $(document).ready(function() { 
     setTimeout(function() { 
      $.ajax({ 
       url: 'process.php',  
       type: 'post',  
       data: {"token": "your_token"} //removed the comma from last argument 
      }).done(function(serverResponse) { 
       alert("Success: " + serverResponse); //Will show success alert with concatenated text string if the request is successful 
      }).fail(function(serverResponse) { 
       alert("Error: " + serverResponse.message); //Will show error alert with concatenated error message 
      }); 
     }, 5000); 
    }); 

</script> 
관련 문제