CI 묻고 답하기

제목 저도 정말 초보적인 질문한개만 부탁드립니다.
글쓴이 카루 작성시각 2011/04/01 17:10:59
댓글 : 5 추천 : 0 스크랩 : 0 조회수 : 17686   RSS
 4060번 럭스톤님 질문글과 비슷한 내용입니다만,
전 에러코드도 안나오고 브라우저가 그냥 하얗게 배경만 나와서요.
무슨문제인지 잘 모르겠습니다.

개발서버는 맥북이고, MAMP 설치했고, CI 1.7.2 버전입니다.

Controllers/config/routes.php 를 손봐서 Controllers/blog.php 로 로드하게 해놓았구요.
나머지 설정은 다 default 입니다.

아래는 소스입니다.
Controllers/blog.php

<?php
class Blog extends CI_Controller {
public function _Blog()
{
parent::Controller();
}
public function index()
{
$data[ 'framework' ] = "CodeIgniter";
$data[ 'server'] = "Apache";
$data['data_list']=array['mysql', 'mssql', 'oracle'];
 
$this->load->view('blog_message', $data);
}
}




Views/blog_message.php==================
<html>
<head>
<title>TEST CodeIgniter</title>
</head>
<body>
<h3><?=$framework ?></h3>
</body>
</html>

답변 부탁드립니다.


 다음글 model 문제좀 봐주세요. (12)
 이전글 htaccess 관련 질문 드립니다. (5)

댓글

변종원(웅파) / 2011/04/01 17:36:27 / 추천 0
public function _Blog()
{
parent::Controller();
}


_Blog()   <-- _를 접두어로 붙이시면 컨트롤러 내부에서만 호출하여 쓸수있는 private함수가 됩니다.

그리고 db 를 로딩하셨는지 확인해보세요. (로딩하셨다면 정보가 맞는지..)
보통 db관련 에러가 날 경우 흰 화면만 나오는 경우가 있습니다.
카루 / 2011/04/01 17:56:09 / 추천 0
 To 웅파
생성자에 _(Underscore)를 붙이면 private이 된다하셨는데, 생성자의 Public / Private의 여부가 브라우저 출력과 연관이 있는건가요? (컨트롤러 이름으로 라우팅되는게, 객체를 생성하는건지도 좀...)그리고 지금 user guide 보면서 컨트롤러/뷰 부분 따라하는 중이라 아직 DB 연동같은건 없어요 ㅠ 추가적인 조언좀 부탁드립니다.

변종원(웅파) / 2011/04/01 18:02:22 / 추천 0

애당초 구문 자체가 틀려서 그렇습니다.
그리고 버전이 1.7.2 라고 하셨는데 구문은 2.X 버전을 사용하셨네요.

2.X 버전
class Welcome extends CI_Controller {

 function __construct()
 {
  parent::__construct();
 }

 function index()
 {
  $this->load->view('welcome_message');
 }
}

1.7.X버전
class Blog extends Controller {

 
public function Blog()
{
parent::Controller();
}
}
변종원(웅파) / 2011/04/01 18:04:46 / 추천 0
그리고 _ 부분은

function _tests(){
 return 'aa';
}

일 경우 외부에서 직접 호출인 안됩니다.

http://localhost/main/_test 와 같이 호출이 안된다는 겁니다.

function index(){

  $aa = $this->_tests();

}

이렇게 쓰실 수 있는 겁니다.
카루 / 2011/04/01 18:05:37 / 추천 0
 to 웅파
아, 그렇군요. 조언감사합니다. 참고할 자료가 CI 한국사용자포럼에서 제공하는 자료뿐이라, 좀 헷갈렸나보네요.