| 제목 | 안녕하세요 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
스무고개의 끝이 좀 허무하네요. ^^
|