CI 묻고 답하기

제목 post로 전송된 정보를 리셋시킬려면 어떻게 해야 할까요?
글쓴이 율마 작성시각 2015/07/16 01:44:24
댓글 : 0 추천 : 0 스크랩 : 0 조회수 : 14849   RSS
POST로 전송 받은 값을 리셋시킬 수 있나요?

먀냐님의 공개보드를 활용해서 관리시스템 만드는 중인데요~
회원기능은 사용하지 않지만, 관리자는 여러명이 있을 수 있어서
CI자체 회원관리 기능을 활용해서
관리자로 로그인 한 자가 다른 관리자의 정보는 확인 할 수 없되,
자신의 정보는 변경하겠금 해야겠길래~
없는 실력에 멤버관리와 관리자를 짬뽕하여
관리자가 자신의 비밀번호 확인 후 자신의 정보를 수정하는 
"adm/staff/form/u/본인아이디" 페이지로 넘어가도록 하되,
자신의 아이디를 수정하는 페이지 url을 숨기기 위해

/www/app/controllers/adm/staff.php에 아래와 같은 코드를 추가하였니다.

그런데 이리 하니 문제가 ...
관리자 비밀번호 확인에 쓰인 post 전송값이 그대로 같이 전송되어
폼검증이 작동해버리네요~~

폼검증이 작동하지 않도록 post값을 리셋시키는 방법은 없는 지 궁굼합니다!
 
  function confirm() {
		if (!SU_ADMIN)
			alert('관리자만 접근하실 수 있습니다.', '/');

		$member = unserialize(MEMBER);

		$this->session->unset_userdata('ss_tmp_password');
		$head = array('title' => '관리자 비밀번호 확인');
		$data = array(
			'token'  => get_token(),
			'mb_id'  => $member['mb_id'],
			'action' => '/'.ADM_F.'/staff/modify'
		);

		widget::run('head', $head);
		$this->load->view('member/confirm', $data);
		widget::run('tail');
	}
  function modify(){
		if (!$this->input->post('mb_password'))
			goto_url('/');

		if (!SU_ADMIN)
			alert('관리자만 접근하실 수 있습니다.', '/');
			
		$member = unserialize(MEMBER);
		
		if ($member['mb_id'] != $this->input->post('mb_id'))
			alert('로그인된 회원과 넘어온 정보가 서로 다릅니다.');
		
		$mb_password = ($this->session->userdata('ss_tmp_password')) ? $this->session->userdata('ss_tmp_password') : md5($this->input->post('mb_password'));
		if ($this->encrypt->decode($member['mb_password']) != $mb_password)
			alert('비밀번호가 맞지 않습니다.', '/'.ADM_F.'/staff/modify');
		$this->form('u',$member['mb_id']);
	}

 
 다음글 htc 파일 업로드 관련 질문입니다. (2)
 이전글 데이터베이스 사용할때 이게 insert,update등 ... (2)

댓글

없음