제목 | 컨트롤러 함수 관련 질문 드립니다. | ||
---|---|---|---|
카테고리 | CI 2, 3 | ||
글쓴이 | 초심으로 | 작성시각 | 2023/11/24 12:20:11 |
|
|||
안녕하세요. 어제부터 ci3 튜토리얼 보면서 공부 시작했는데 궁금한게 있어서 질문 드려봅니다. 1. routes.php 에 파일에 $route['default_controller'] = 'pages/view'; --> 위와같이 적으면 브라우저에서 도메인 입력했을 때 보여지는 첫페이지가 pages 컨트롤러에 view 함수에 있는 view 페이지가 보여진다. 라고 이해했는데 맞는 건가요?
2. Pages.php 컨트롤러 파일의 view 함수 public function view($page = 'home') { //-- view 페이지가 존재하는지 검사 if ( !file_exists(APPPATH.'views/pages/'.$page.'.php') ) { show_404(); } $data['title'] = ucfirst($page); //-- 첫글자 대문자 $this->load->view('templates/header', $data); $this->load->view('pages/'.$page, $data); $this->load->view('templates/footer', $data); } --> 여기 view 함수에서 나머지는 알겠는데. view($page = 'home') 여기서 $page 파라미터에 다른 값을 주려면 브라우저 주소에 http://localhost:8801/pages/view/page=sub 이런식으로 입력하면 되는건가요? sub.php 페이지를 만들어서 테스트를 해보면 An Error Was Encountered / The URI you submitted has disallowed characters. 이런 오류가 나오구요. http://localhost:8801/pages/view/sub 이렇게 주소를 입력하면 제대로 나오는데 그럼 $page = 'home' 여기에서 $page 파라미터가 의미하는 건 무었인가요?
|
|||
다음글 | 라우터 설정 관련 문의 (1) | ||
이전글 | php 레거시 -> ci 전환 질문 (2) | ||
kaido
/
2023/11/24 14:01:59 /
추천
1
|
초심으로
/
2023/11/24 14:40:43 /
추천
0
여기서 말하는 $page는 메소드 호출상에 $page 라는 변수가 디폴트로 home 을 넣겠다는 의미입니다. uri 에서 page 를 sub 로 받는거랑 관련 없습니다. 메소드 호출을 생각 해보시면 됩니다.
--> 이 말씀이 핵심이네요... 잘 알겠습니다. 감사합니다. (--)(__) |
이렇게 받고 싶으시다는 것이죠?
어렵게 생각 하실것 없습니다. 기본을 먼저 떠올리시면 됩니다.
get string 사용법은 당연하게도 ?page=sub&data=1 이런 형태 이여야 합니다.
해당 오류는 uri 스트링 형식에 오류가 있음을 의미합니다.
여기서 말하는 $page는 메소드 호출상에 $page 라는 변수가 디폴트로 home 을 넣겠다는 의미입니다.
uri 에서 page 를 sub 로 받는거랑 관련 없습니다. 메소드 호출을 생각 해보시면 됩니다.
일부 언어 프레임워크 중에는 메소드에서 바로 파라메터를 받기도 합니다만 CI 에서는 그렇게 사용하지 않습니다.
get string 으로 받을려면
해당 형태로 받아보세요.