2014-08-31 4 views
-1

아약스를 통해 전송되는 데이터에 액세스하려고하고 echo 문을 반환하지만 통과 한 내용이 아니라면 무엇이 잘못 되었습니까?PHP로 아약스 데이터를 반환하지 않습니다

$.ajax({ 
    url: 'http://www.example.php', 
    data : { 'foo' : 'bar', 'bar2' : 'foo2' }, 
    processData: false, 
    contentType: false, 
    type: 'POST', 
    success: function(data){ 
    console.log('success data '+data); 
    } 
}); 

$data = $_POST['foo']; 
$data2 = $_POST['bar2']; 
echo('almost'); 
echo($data); 
echo($data2); 
echo('almost'); 

콘솔

+1

[** echo **] (http://php.net/manual/en/function.echo.php)는 기능이 아니라 언어 구조입니다. –

답변

1

귀하의 아약스 요청이 잘못 almostalmost, 당신은 당신의 데이터를 처리하고 늘 일하는 그대로 보내하지 jQuery.ajax을 이야기하고 성공의 데이터를 읽어

$.ajax({ 
    url: 'http://www.example.php', 
    data : { 'foo' : 'bar', 'bar2' : 'foo2' }, 
    type: 'POST', 
    success: function(data){ 
    console.log('success data '+data); 
    } 
}); 

귀하의 서버 측 스크립트는 application/x-www-form-urlencoded 콘텐츠 유형을 기대하고 있습니다. 이것이 jQuery.ajax가 기본적으로하는 내용이지만 데이터를 처리하지 않거나 콘텐츠 유형을 설정하지 않은 경우에는 적용되지 않습니다.

+0

파일 업로드는'application/x-www-form-urlencoded'가 아닌'multipart/form-data'를 사용합니다. ajax를 사용하여 파일을 업로드하려면 프로세스 데이터 및 내용 유형이 해제 된 FormData 객체를 사용해야합니다. – Musa

관련 문제