만들면서 배우는 CodeIgniter Q&A

제목 웅파님!!! 뭔가 실마리를 잡은것 같은데요!!
글쓴이 작업공간 작성시각 2014/07/08 13:06:09
댓글 : 7 추천 : 0 스크랩 : 0 조회수 : 9236   RSS
http://ehdwls5tls.cafe24.com/ci/index.php/ajax_board/test

여기보시면 아예 POST가 안넘어와요...

console.log로 sendRequest 부분 값을 넘기긴했는데.. 왜이럴까요?

getXMLHttpRequest 부분이랑
httpRequest = getXMLHttpRequest();

한뒤에

httpRequest 에서
httpRequest.open
httpRequest.setRequestHeader
httpRequest.onreadystatechange
httpRequest.send

가 어떻게 나오게 되는건지도 궁금해요.
function getXMLHttpRequest()에서는 open 이라던가 setRequestHeader 라던가 값을 주지도 않았는데...

아예 POST가 넘어오지 않는걸 확인했으니 이제 어떻게 해야할지가 또 막막해서 글올립니다..
이거 해결이 안되니까 진도를 빼기가 의욕이 나질 않아요 ㅠㅠㅠ

말씀하신데로 csrf 는 뺐었는데 이거 POST값 넘어가는게 해결되면
그것도 다시 시도해보려고요...
 다음글 게시판 리스트 만들고 있는데요 (1)
 이전글 이건 진짜 문제가 있는것 같아요!!! (8)

댓글

변종원(웅파) / 2014/07/08 17:22:30 / 추천 0
같은 맥락입니다. POST 전송이 안되니 csrf 값도 안넘어가고 그렇다보니 csrf관련 에러메시지가 나오는거죠.
POST 전송이 되면 둘다 해결됩니다.

로컬 컴퓨터에 apm 설치하고 해보실 수 없는지요?
변종원(웅파) / 2014/07/08 17:24:14 / 추천 0
파이어폭스에서 보니 정상적으로 콘솔로그가 찍힙니다. POST 전송되는데요?
 
name=웅파

array(0) 나오는건 뭘 찍어보신건가요?

var_dump($_POST);

http://ehdwls5tls.cafe24.com/ci/index.php/ajax_board/ajax_action  <-- 소스 올려주세요
작업공간 / 2014/07/09 15:54:09 / 추천 0
var_dump($_POST); 로 찍어봤습니다!

소스첨부하겠습니다.

public function ajax_action() {
        echo '<meta http-equiv="Content-Type" content="text/html; charset=utf-8">';
        $name = $this->input->post('name');
        var_dump($_POST);
        echo $name.'님 반갑습니다!';
}

왜 POST가 안가는걸까욥...
변종원(웅파) / 2014/07/10 16:59:57 / 추천 0
function server_request() {
 var name = "name="+ encodeURIComponent(document.ajax_test.names.value);
        alert(name);
 sendRequest("/ci/index.php/ajax_board/ajax_action", name, callback_hello, "POST");
}

위처럼 name 을 경고창으로 출력해보세요. 
변종원(웅파) / 2014/07/10 17:30:34 / 추천 0
파일 캐릭터셋과 js 파일 권한도 보세요.
 
작업공간 / 2014/07/11 11:05:23 / 추천 0
으... 위 방법은 해보았던것입니다.
alert말고
console.log(name);

으로 찍어보았었구요....
값은 정상적으로 나오던데... 으아 ㅋ
변종원(웅파) / 2014/07/11 13:12:18 / 추천 0
그럼 마지막으로 ajax 전송 말고 일반 폼전송문 작성해서 호스팅에 올려서 테스트해보세요. 

sendRequest 방식이 어떤 이유로 막혔을 수도 있구요.
책의 그 다음부분 jquery를 이용한 ajax 소스를 넣어서 테스트 해보면 답이 나오겠네요.
jquery를 이용한 방식도 안되면 뭔가 호스팅의 문제이구요.
일반 폼전송이나 jquery방식은 된다면 sendRequest 문제이구요.