목차

<title>CodeIgniter</title>

커스터마이징이 까다로워서 그만 둠

설치

기본

보안등의 이유로 systemapplication폴더 이름을 바꾸려면,

CodeIgniter 폴더를 이동해서 사용하고 싶다면

CodeIgniter

Application Flow Chart

정적 페이지 작성

간단히,

  1. application/controllers/ 폴더에 새로운 컨트롤러 추가
  2. application/views/ 폴더에 화면 표시용 뷰 페이지를 추가
  3. (1)번에서 적은 컨트롤러가 호출될 때, 뷰 폴더에 추가한 페이지를 호출하면 된다.

CI 의 페이지 표시 방식

URL의 위치별로 역할이 정해져 있다.

http://example.com/news/latest/10
http://example.com/[Controll-Class]/[Controller-Mehtod]/[arguments]

Controll 페이지 추가

application/controllers/pages.php 추가

<?php
class Pages extends CI_Controller {
  public function view($page = 'home') { }
}

별로 티는 안나지만, 새로운 기능을 추가했다. 사용하는 방법은,

http://(test-site)/pages/view/$page

와 같은 형식으로 적어주면 된다.

뷰 페이지 추가

application/views/templates/header.php 파일 추가

<html>
<head>
  <title><?php echo $title ?> - CodeIgniter 2 Tutorial</title>
</head>
<body>
	<h1>CodeIgniter 2 Tutorial</h1>

application/views/templates/footer.php 파일 추가

<strong>&copy; 2011</strong>  
</body>
</html>

컨트롤러에 로직 추가

아무 내용으로든, home.phpabout.php 파일을 작성합니다.

아까 작성한 pages.php 파일의 view 함수를 변경 합니다.

public function view($page = 'home')
{
	if ( ! file_exists('application/views/pages/'.$page.'.php'))
	{
		// Whoops, we don't have a page for that!
		show_404();
	}
 
	$data['title'] = ucfirst($page); // Capitalize the first letter
 
	$this->load->view('templates/header', $data);
	$this->load->view('pages/'.$page, $data);
	$this->load->view('templates/footer', $data);
}

접속 테스트

라우팅 Routing

// 아래 방법은 pages/view를 사이트 기본 접속 주소로 바꿔버리므로, 이런 것이 있다는 정도만 보는게 좋을 듯.
$route['default_controller'] = 'pages/view';
$route['(:any)'] = 'pages/view/$1';
// http://(site-url)/page/ 를 입력하면, http://(site-url)/pages/view/ 에 접속하라는 정의
$route['page'] = 'pages/view';
// http://(site-url)/page/home 과 같이 입력하면, http://(site-url)/pages/view/home 에 접속하라는 정의
$route['page/(:any)'] = 'pages/view/$1';

동적 페이지 작성

트러블슈팅

커뮤 사이트