제목 | httpRequest.open 에러.. 좀 도와주세요 ㅜㅜ | ||
---|---|---|---|
글쓴이 | vvshinevv | 작성시각 | 2016/08/06 02:01:05 |
|
|||
안녕하세요 코드이그나이터 책 사서 열심히 따라해보고 있습니다. 그런데 오타도 없고 몇번을 확인하고 구글링을 해봐도.. 답이 안나오는거같아서 질문올립니다... (혹시 또 허무한곳에서 답이 나올까봐 두렵긴 하네요..나름 5시간..동안 찾아보고 이것저것해봣는데..)
페이지는 232쪽부터 입니다. /include/js/httpRequest.js function getXMLHttpRequest() { if(window.ActiveXObject) { try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) { try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch(e1) { return null; } } } else { return null; } } var httpRequest = null; function sendRequest(url, params, callback, method) { httpRequest = getXMLHttpRequest(); var httpMethod = method ? method : 'GET'; if(httpMethod != 'GET' && httpMethod != 'POST') { httpMethod = 'GET'; } var httpParams = (params == null || params == '') ? null : params; var httpUrl = url; if(httpMethod == 'GET' && httpParams != null) { httpUrl = httpUrl + "?" + httpParams; } httpRequest.open(httpMethod, httpUrl, true); httpRequest.setRequestHeader( 'Content-Type', 'application/x-www-form-urlencoded'); httpRequest.onreadystatechange = callback; httpRequest.send(httpMethod == 'POST' ? httpParams : null); } 요런식으로 작성을 햇구요.. controllers/ajax_board.php <?php defined('BASEPATH') OR exit('No direct script access allowed'); /** * Ajax 처리 컨트롤러 */ class Ajax_board extends CI_Controller { function __contruct() { parent::__contruct(); } /** * Ajax 테스트 */ public function test() { $this->load->view('ajax/test_v'); } public function ajax_action() { echo '<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />'; $name = $this->input->post("name"); echo $name."님 반갑습니다!"; } }
그리고 views/ajax/test_v.php <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no"/> <title>CodeIgniter</title> <!--<script type="text/javascript" src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>--> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> <link rel="stylesheet" href="https://cdn.jsdelivr.net/sweetalert2/4.0.16/sweetalert2.min.css"> <script type="text/javascript" src="/todo/include/js/httpRequest.js"></script> <script type="text/javascript"> function server_request() { var csrf_token = getCookie('csrf_cookie_name'); var name = "name=" + encodeURIComponent(document.ajax_test.names.value) + "&csrf_test_name=" + csrf_token; /** * @param url : 데이터를 전달하여 처리할 웹 서버 주소 * @param name : 파라미터 * @param callback : 콜백 함수 post방식으로 전소아고 처리가 끝나면 받은 데이터를 callback_hello에서 처리하란 뜻 * @param 전송 방식 */ sendRequest("http://localhost/todo/index.php/ajax_board/ajax_action", name, callback_hello, "POST"); // httpRequest.js에 있는 함수 } function callback_hello() { if(httpRequest.readyState == 4) { if(httpRequest.status == 200) { var contents = document.getElementById("contents"); contents.innerHTML = httpRequest.responseText; } } } function getCookie(name) { var nameOfCookie = name + "="; var x = 0; while(x <= document.cookie.length) { var y = (x + nameOfCookie.length); if(document.cookie.substring(x, y) == nameOfCookie) { if((endOfCookie = document.cookie.indexOf(";", y)) == -1) endOfCookie = document.cookie.length; return unescape(document.cookie.substring(y, endOfCookie)); } x = document.cookie.indexOf(" ", x) + 1; if(x == 0) break; } return ""; } </script> </head> <body> <div id="main"> <form method="post" name="ajax_test"> <label>이름</label> <div> <input type="text" name="names" value="웅파"> </div> <div> <input type="button" onclick="server_request()" value="전송"> </div> </form> <div id="contents"></div> </div> </body> </html> 입니다. 그런데 자꾸 에러가 요런 에러가 발생이 되네요... open 함수를 읽을 수없다는게.. 혹시 저와같은문제를 겪는분이나.. 해결하신분 도움좀 요청합니다!! |
|||
다음글 | 코드이그나이터, XAMPP 객체 없음 문제 (1) | ||
이전글 | 공통적인 부분은 따로 빼서 만들고 싶습니다. (5) | ||
변종원(웅파)
/
2016/08/06 14:45:44 /
추천
0
|
vvshinevv
/
2016/08/06 15:49:33 /
추천
0
흑흑 웅파님..
를 안썻네용... ㅜ_ㅜ... (흑흑...) 하.. 이런.. ㅠ_ㅠ!! 감사합니다 덕분에 확인다시하면서 해결됐네용!! |
변종원(웅파)
/
2016/08/08 10:10:02 /
추천
0
vvshinevv/ 저도 가끔 삽질이라 불리는 것을 합니다. 개발자의 숙명(?) 같은거죠. ^^
|
js파일 위치 보세요. 아래 위치에 js파일이 존재하는지...
<script type="text/javascript" src="/todo/include/js/httpRequest.js"></script>
232페이지는 게시판 프로젝트라 todo와는 상관이 없습니다.
234 페이지 보시면 /bbs/include.... 라고 되어 있습니다.