CI 묻고 답하기

제목 ajax 질문이요... 개념 좀 잡아주세요 ㅜ.ㅜ
글쓴이 박순철 작성시각 2010/12/06 12:42:07
댓글 : 4 추천 : 0 스크랩 : 0 조회수 : 20170   RSS

회원 가입시 중복 아이디를 ajax로 처리할려고 합니다.


모델

	function username_exists($memberId)
	{
		$this->db->where('memberId', $memberId);
		$query = $this->db->get('member');

		if ($query->num_rows() > 0) {
			return TRUE;
		} else {
			return FALSE;
		}
	}
	
컨트롤러

	function useridCheck()
	{
		$memberId = $this->input->post('userid');

		$userCheck = $this->login_model->memberIDCheck($memberId);

		if($userCheck == TRUE)
		{
			echo '1';
		}
	}

자바스트립트

			$('#MemberLoginId').blur(function() {

				if($inputTxt.val() == '')
				{
					$idCheck.css('visibility','visible');
					return false;
				}
																						
				var userid = $('#MemberLoginId').val();
				
				$.ajax({
					type: "POST",
					url: "login/useridCheck",
					data: {"userid" : userid},					datatype: "text",
					success: function(data)
					{
						alert( "PHP Message: " + data );
					}
				});

				
			});

success: function(data) <== 요기의 data 가 1 이 출력되는걸로 생각했는데...

막상해보니까 html 코드가 뿌려지는데요.

뭔가 개념부족인듯한데;;;;;;;;     조언부탁드려요 (__)


아.. 그리고 컨트롤에서

$memberId = $this->input->post('userid');   <== 자바스크립트에서 제대로 값을 받아봤는지 알기위해서
echo $memberId;  <== 이렇게 넣어도 화면엔 출력되지 않는데,  어떻게 체크를 해야 하나요?
 다음글 session이 자주 끊깁니다. (1)
 이전글 jquery 를 배우고 싶은데 기초내용 있는 사이트 추... (5)

댓글

작돌이 / 2010/12/06 13:53:56 / 추천 0
컨트롤러와 컨트롤러에서 데이터를 뷰로 넘겨주는 부분을 살펴보세요.
MVC 에서 표현을 담당해주는 View 부분에 대한 정리가 필요해보여요.

정리하자면 

데이터를 컨트롤러에서 뷰로 보내시고 보낸 데이터가 Ajax success 에서 뿌려지는 형태로 진행하시면 될 듯해요.
그냥 echo 사용하는것 대신 View로 보내주세요.
케이든 / 2010/12/06 14:00:36 / 추천 0

자바코드 12번째 줄
url : "/login/useridCheck"

url이 잘못되서 요청자체가 안된거같습니다


자바개발하실땐 파이어폭스에서 firebug 켜놓고 하시면 편리하죠~

박순철 / 2010/12/06 14:01:45 / 추천 0
답변 감사합니다. ^^

아.. 전 바보인가 봐요..

첫번째 문제는

url: "login/useridCheck",    < = 주소 문제였구요.

두번째는 문제는 컨트롤러의

$this->output->enable_profiler(TRUE);   <== 이 것때문에 결과값하고 HTML 하고 같이 보여졌더라구요.

으헉 ㅠ.ㅠ
변종원(웅파) / 2010/12/06 16:47:17 / 추천 0
케이든님 말씀대로 파이어폭스에서 파이어버그의 Net 부분을 보시면 ajax로 왔다갔다 하는 값들을
볼 수 있습니다. 개발할때 편합니다.