만들면서 배우는 CodeIgniter Q&A

제목 도움을 요청합니다
글쓴이 뭇별 작성시각 2016/04/02 10:55:41
댓글 : 9 추천 : 0 스크랩 : 0 조회수 : 11761   RSS

안녕하신지요.

어제 제가 CI외 질문란에 올렸던 질문에 대하여 웅파님께서 좋은 안내를 해주셔서

main.php의 내용 가운데 $this->load->helper(array('url','date')); 부분을 안내대로

수정하였더니 웹에서 주소창에 http://localhost/todo/index.php/main/lists 를 입력

하였을 때 P. 62의 실행결과가 아래와 같이 다시금 잘 작동이 되어 감사했습니다.

-------------------------------------

만들면서 배우는 CodeIgniter

실행 예제

Todo 목록

번호 내용 시작일 종료일
111 김길동 2016-03-17 2016-03-18
112 이길동 2016-03-18 2016-03-19
쓰기

 

CodeIgniter한국사용자포럼

Copyright by 웅파

----------------------------------------

그런데 다시금 웹브라우저 주소창에 http://localhost/todo/index.php/main/view/1

입력하여 실행하였더니 어제 나온 에러가 아래와 같이 다시 뜨네요. 그래서 웅파님께서

책의 오타부분을 올려주신 내용을 몇번 읽었는데 아래의 내용들은 기재가 없어서 다시금

올려봅니다.

-------------------------------화면의 상단의 맨 오른쪽 창에 뜬 에러 ---------------------------

A PHP Error was encountered

Severity: Notice

Message: Trying to get property of non-object

Filename: todo/view_v.php

Line Number: 36

Backtrace:

File: D:\xampp\htdocs\todo\application\views\todo\view_v.phpLine: 36Function: _error_handler

File: D:\xampp\htdocs\todo\application\controllers\main.phpLine: 36Function: view

File: D:\xampp\htdocs\todo\index.phpLine: 294Function: require_once

 

/** 여기서 view_v.php의 36행은 <th scope="col"><?php echo $views->id;?> 번 할일</th> 이며

     index.php 의 294 행은 require_once BASEPATH.'core/CodeIgniter.php'; 인데 이 두행에 어디가

에러인지 안내 부탁드립니다. 참고적으로 에러가 난 실행화면에 "번 할일"이란 제목과 ~번에

해당되는 숫자가 안뜨네요. 그리고 아래에 에러를 계속 올리는데 */

-------------------------------------화면의 상단의 중앙 창에 뜬 에러 -------------------------------

A PHP Error was encountered

Severity: Notice

Message: Trying to get property of non-object

Filename: todo/view_v.php

Line Number: 37

Backtrace:

File: D:\xampp\htdocs\todo\application\views\todo\view_v.phpLine: 37Function: _error_handler

File: D:\xampp\htdocs\todo\application\controllers\main.phpLine: 36Function: view

File: D:\xampp\htdocs\todo\index.phpLine: 294Function: require_once

/** 위 에러에서 view_v.php 의 37행은 <th scope="col">시작일 : <?php echo $views->created_on;?></th>

로써 첫번째 에러의 다음행이며 데이터를 출력을 못하고 있습니다. 그런 이유 때문인지

index.php에는 294행에 반복되는 에러가 나옵니다. 그리고 상단 화면 오른쪽의 에러를 올리면

--------------------------------------화면의 상단의 맨 오른쪽 창에 뜬 에러 -----------------------------------

A PHP Error was encountered

Severity: Notice

Message: Trying to get property of non-object

Filename: todo/view_v.php

Line Number: 38

Backtrace:

File: D:\xampp\htdocs\todo\application\views\todo\view_v.phpLine: 38Function: _error_handler

File: D:\xampp\htdocs\todo\application\controllers\main.phpLine: 36Function: view

File: D:\xampp\htdocs\todo\index.phpLine: 294Function: require_once

/** 여기서 view_v.php의 38행은 <th scope="col">종료일 : <?php echo $views->due_date;?></th>

로써 결국 데이터 출력을 못하고 있습니다. HeidiSQL로 열어보면 데이터는 분명히 있습니다. */

--------------------------------------------------------------------------------------

이렇게 상단창에 세개의 에러가 뜨고 하단창에 아래와 같은 에러가 뜹니다.

A PHP Error was encountered

Severity: Notice

Message: Trying to get property of non-object

Filename: todo/view_v.php

Line Number: 44

Backtrace:

File: D:\xampp\htdocs\todo\application\views\todo\view_v.phpLine: 44Function: _error_handler

File: D:\xampp\htdocs\todo\application\controllers\main.phpLine: 36Function: view

File: D:\xampp\htdocs\todo\index.phpLine: 294Function: require_once

/** 여기서도 view_v.php의 44행은 <?php echo $views->content;?>인데 데이터를 결국

못 읽어옵니다. */

----------------------------------------

오늘 토요일이라 직원들 전부가 쉬는데 이 문제 때문에 혼자 출근하여 해결하려는데

결국은 도움이 다시 필요할 것 같아 올려봅니다. 주말 잘 보내세요^^ 감사합니다.

 다음글 출력에 관한 질문입니다. (2)
 이전글 교재 게시판 프로젝트 응용 관련문의 (1)

댓글

변종원(웅파) / 2016/04/02 12:56:26 / 추천 0
$view 내용을 출력해보세요. 내용이 없거나 연관배열일 수 있습니다. 현재 출력방식은 객체배열입니다
뭇별 / 2016/04/04 09:19:08 / 추천 0

주말 잘 보내셨습니까. 오늘 아침에 출근하여 답을 주신 내용을 살펴보며 이것이

무슨 뜻인가 살펴보았습니다. 연관배열과 객체배열에 관한 공부도 해보고 코드를

살펴보았으나 어디에 버그가 숨어 있는지 알수가 없군요. 위에 말씀하신 내용을

좀더 구체적으로 설명을 해주시면 고맙겠습니다. 아니면 이 페이지의 소스에서

저와 같은 에러를 이미 겪은 분들이 이미 있으신지 그 분들이 어떻게 이 문제를

해결했는지 알려주시면 고맙겠습니다.

변종원(웅파) / 2016/04/04 10:25:41 / 추천 0

뭇별/ $view 내용 화면에 출력해보면 답이 나옵니다. print_r($view);

$view 내용이 어떻게 들어있는지 확인하려면 화면에 출력해봐야하잖아요? ^^

뭇별 / 2016/04/04 19:59:45 / 추천 0

주신답글 감사합니다. 오늘 다른 일로 인하여 프로그램 조사를 못햇습니다.

내일 아침 출근하여 해결해보겠습니다. 감사합니다^^

뭇별 / 2016/04/05 12:58:13 / 추천 0

안녕하십니까. 오전 내 이 문제를 가지고 말씀해주신대로 print_r($view) 명령문을

list_v.php 문서의 여기저기 삽입해서 실행해도 결과는 마찬가지로 나오는군요.

이명령문을 구체적으로 어느 문서 어느 위치에 삽입을 해야하는지요? 감사합니다.

변종원(웅파) / 2016/04/05 15:53:17 / 추천 0

뭇별/ 삽입한다고 문제가 해결되는게 아니라요. 그 내용을 보시라는 겁니다. 내용이 있는지 없는지

있다면 어떤 형태인지요. 그 내용을 올려보세요.

뭇별 / 2016/04/05 19:15:26 / 추천 0

답을 주셔서 감사합니다.

오늘 답글을 보고 책대로 따라가는 터이라 이상이 없다고 판단하고

코드를 보니 찾을 수가 없기에 혹시 코드에 이상이 있는가 하여 다시금

view_v.php를 자세히 보니까 역시나 이상이 없어요. 그런데 그 소스 중에 데이터를

출력하는 내용 중에 <th colspan="4"><a href="/todo/index.php/main/lists/" class="btn btn-primary">목록</a>

와 같이 <a>태그에 의해 내용에 링크가 걸려있는걸 보고 P. 57에 인쇄된 화면 출력

결과에서 제가 내용에 해당되는 "김길동" 을 더블 클릭하여  링크를 걸었더니

아래와 같이 오류없이 결과가 잘 나왔습니다.

-----------------------------------------

만들면서 배우는 CodeIgniter

실행 예제

Todo 조회

111 번 할일 시작일 : 2016-03-17 종료일 : 2016-03-18
김길동
목록 삭제 쓰기

CodeIgniter한국사용자포럼

Copyright by 웅파

-----------------------------------------------------------------

감격스러워서 위와 같이  제대로 실행된 결과를 붙여넣기 했습니다.

CI 숙달자분들은 웃을지 모르나 경험이 전무인 제겐 힘이 나는 일입니다.

제가 이것을 왜 자꾸 오류를 냈는고 하니 책의 P.62의 실해결과가 인쇄된

부분에는 제대로 실행되었을 때 웹브라우저의 주소창에 http://localhost/todo/index.php/main/view/111

와 같이 자동으로 URL이 뜨는데 제가 처음인지라 책에는 http://localhost/todo/index.php/main/view/1

와 같이 인쇄가 되어 이 URL을 손으로 웹브라우저의 입력창에 입력하여 실행

하니가 자꾸 오류가 뜬겁니다. 사실은 어처구니 없는 저의 잘못입니다만 책이

틀림없다고 생각하고 책대로 따라 하다보니 이런 실수가 나는데 웅파님께서

차제에 책을 다시 손보시거든 그 부분에 111이 전부 인쇄되도록 하시면 초보자

들이 혹시라도 저 같은 고생 안하실겁니다^^ 제가 이 문제로 이틀을 소비

했습니다만 시간 낭비했다는 느낌은 없고 덕분에 공부 잘했다는 느낌입니다.

시간을 소비해가시며 답을 오려주신 웅파님의 수고에 다시금 감사드립니다.

좋은 저녁되세요^^

* 추신 : 제가 이글을 올리며 답글 에디터 맨끝에 자동으로 붙어있는 빨간줄을

삭제했더니 실행결과 화면이 일부 깨져서 출력이 안되고 출력도 흑색 바탕으로

나오고 있습니다만 컴퓨터에서는 실행이 잘 되고 있습니다.

 
변종원(웅파) / 2016/04/05 20:51:42 / 추천 0

뭇별/ ^^; 책의 이미지들은 실행결과가 이렇게 나온다라는 것을 보여주는 것이라 주소는 신경을 쓰지 않았습니다. (차라리 이미지에서 주소를 삭제하는게 더 나았을 것 같네요. 어떤 주소를 입력하는지는 책에 명시를 했습니다)

책의 이미지 주소를 따라가지 마시고 실제 작업한 주소를 클릭해서 개발하세요. (책 본문의 주소를 입력하세요)

뭇별 / 2016/04/06 08:44:36 / 추천 0

안녕하십니까. 경험을 하고 나니 정말 그렇군요. 책의 결과가 인쇄된 부분에

앞으로도 이런 문제가 있을 수 있으니 실제 작업한 주소를 입력해야겠습니다.

좋은 하루 되세요^^