제목 | 안녕하세요 CI 4를 이용중입니다. 다름이 아니라 Post 전송 오류관련 질문드립니다. | ||
---|---|---|---|
카테고리 | CI 4 관련 | ||
글쓴이 | 꼬리 | 작성시각 | 2020/10/21 18:14:48 |
|
|||
폼에서 POST 값을 전송하여 컨트롤러에서 받아 사용하려 합니다. 일단 먼저 코드터 보여드리겠습니다. 뷰 부분이구요 <!--<form method="get" action="login">--> <?php helper('form'); echo form_open('login/'); ?> <div class="form-group"> <label for="user_id">아이디</label> <input type="text" class="form-control" name="user_id" id="user_id" required="" placeholder="아이디를 입력하세요."> </div> <div class="form-group"> <label for="user_password">비밀번호</label> <input type="password" class="form-control" name="user_password" id="user_password" required="" placeholder="비밀번호를 입력하세요."> </div> <div class="mt-3 text-right"> <button class="btn btn-primary w-sm waves-effect waves-light" type="submit">로그인</button> </div> <?php echo form_close(); ?> <!--</form>-->
컨트롤러 부분입니다. public function show_login() { // $user_id = $request->getVar('foo'); // // echo $this->request->getMethod(); print_r($_POST); print_r($_GET); $data = [ 'title_meta' => view('partials/title-meta', ['title' => '로그인']), ]; return view('Index/login', $data); }
폼 서브밋시 자기 자신 페이지로 서브밋하여 검증하는 형태입니다. 폼 헬퍼를 이용해서 post 방식의 폼이 생성된건 확인 할 수 있습니다. 하지만 폼 내부에 있는 태그들이 컨트롤러에서 print_r($_POST) 로 확인이 안되더군요... 그래서 GET방식도 안되나 싶어서 폼을 get으로 변경해서 보냈을 땐 잘 보내집니다. 처음엔 폼헬퍼가 아닌 그냥 폼을 만들어서 사용했을때 안되서 폼 헬퍼를 이용했지만 결과는 마찬가지구요... 이것저것 해봤지만 왜 post만 안되는지 모르겠습니다 ㅠㅠ
|
|||
다음글 | 쿠키 관련 질문 드립니다. (2) | ||
이전글 | 파일 업로드 관련 권한 질문입니다 (4) | ||
테러보이
/
2020/10/21 19:26:21 /
추천
0
혹시 라우터 걸려있는페이지인가요?
|
한대승(불의회상)
/
2020/10/21 19:43:39 /
추천
0
$this->request->getPost() 사용하시면 됩니다. 아래 메뉴얼 확인해 보세요. |
꼬리
/
2020/10/22 10:01:37 /
추천
0
라우터에 걸려있는 페이지 맞구요 ㅠㅠ 메뉴얼 대로 getPost는 사용해봤지만 나오지 않습니다 ㅠㅠ |
PureAni
/
2020/10/22 10:21:44 /
추천
0
CI 안거치고 그냥 쌩 PHP에서 POST가 넘어오나요? CI 안거치고 POST를 했을때 값이 넘어오면, CI쪽이 문제일 수 있지만, 만약에 CI가 아닌 그냥 쌩 PHP에서도 POST시 값이 안넘어오면 서버쪽 문제일 수 있습니다. |
꼬리
/
2020/10/22 10:24:13 /
추천
0
서버쪽 문제일까봐 CI 외부에서 post 진행했을땐 값이 잘 넘어왔습니다. 현재 위의 코드상에는 v -> c 로 post 값 넘기는 부분입니다... 자기 자신에게 서브밋하여 c 부분에서 받는건데... post만 안넘어오네요... 정상적으로 CI 거쳤는데... 흑흑..
|
한대승(불의회상)
/
2020/10/22 10:27:29 /
추천
0
@꼬리 일반 php에서 $_POST로 넘어 온다면 서버는 문제는 아닙니다.
|
변종원(웅파)
/
2020/10/22 10:32:13 /
추천
0
아래 글 참고해서 방식을 변경해보세요. 특정 서버나 환경의 영향으로 post 데이터가 다른 형태로 넘어올 경우가 있습니다. https://jonnung.dev/php/2015/08/06/php-use-http-raw-post-data/ |
PureAni
/
2020/10/22 10:43:35 /
추천
0
Route의 설정과 CI 버전이 몇버전인지 모르겠지만, CI 포럼에 관련된 내용이 있기는 하네요. 적중하는 상황인지는 모르겠지만, 한번 확인해보세요. Router 에 변수가 있는경우 $_POST와 $_FILE의 값이 사라졌는데, 변수를 제거하고 날려보니 살아났다는 글입니다. |
꼬리
/
2020/10/22 11:45:56 /
추천
0
모두들 감사합니다 참고해서 진행해보도록 하겠습니다! |
한대승(불의회상)
/
2020/10/22 13:28:01 /
추천
0
<form>태그의 method를 post로 바꿔보세요.
|
테러보이
/
2020/10/23 10:32:13 /
추천
0
|
꼬리
/
2020/10/26 09:59:35 /
추천
0
다들 많은 의견 감사합니다 문제는 한번더 리다이렉트 시키는 현상이 있어서 config 수정으로 해결 완료했습니다..!! |
변종원(웅파)
/
2020/10/26 17:16:45 /
추천
0
스무고개의 끝이 좀 허무하네요. ^^
|