2014-01-20 4 views
1

다음은이 tutorial을 따라 일정 달력을 만듭니다.이 달력은 백본과 fullcalendar jquery 플러그인을 사용합니다.은 서버에서 보낸 아약스 데이터에 액세스 할 수 없습니다.

백본은 (ajax를 통해) 이벤트 세부 정보 (시작 날짜, 종료 날짜, 제목)를 서버에 보내는 작업을 담당합니다. 서버에 보낸 내용의 이미지는 snapshot입니다.

Chrome Dev Tools의 네트워크 패널 (헤더 탭)에서 가져옵니다. 나는 다음 코드 줄과 내가 이벤트의 제목을 액세스 할 것으로 기대 :

$title=$conn->real_escape_string($_POST['title']); 

그러나 이런 일이 발생하는 이유는 이해가 안 할 수 없다. 백본은 POST 메서드를 통해 JSON을 서버로 보냅니다. 내가 여기서 무엇을 놓치고 있니? 당신은 요청 본문의 JSON 사전을 보내는

$content = file_get_contents("php://input"); 
+0

POST를 통해 전송되고 있습니까? 유머 감각을 위해 GET 테이블을 확인하십시오. 그렇지 않으면 코드에 리디렉션 (.htaccess/header)이 있는지 알고 있습니까? ($ _POST 데이터는 여기에 포함되지 않습니다.) – eithed

+0

'json_decode ($ _ POST [ 'title']); '로 JSON 디코드 – Deryck

+0

데이터가 게시 매개 변수가 아닌 요청 본문으로 전송됩니다. –

답변

2

PHP는 구문 분석 JSON 데이터에 문제가 있습니다. PHP에서 http_get_request_body을 사용하여 전체 JSON 문자열을 얻은 다음 json_decode입니다.

+0

위의 함수의 매개 변수로 아약스 데이터가 전송되는 PHP 페이지를 사용할 것인가? 위의 함수로 이벤트의 제목을 얻는 방법을 잘 모르겠습니다. –

+0

나는 위의 예를 생각했다. 나는 내용물 변수에 무엇이 반환되는지를 붙여 넣을 것이다. –

+0

? 제목에 액세스 할 수있는 방법은 무엇인가? 나는 내 자신의 테스트를 할 것이지만 또한 묻는다. –

0

: 그것은 게시 된 데이터는이를 사용하여 쿼리 문자열 형식 (key=value&key1=value1) .try 될 것으로 예상하기 때문에

+0

위와 관련하여 질문하고 싶은 질문이 하나 있습니다. json 함수를 보낼 때 .jax 함수를 사용하면 json이 전송되는 곳에서 가져옵니다. 요청 본문도 포함되어 있습니까? –

관련 문제