CI 묻고 답하기

제목 ci기본설정(index만제외처리) 한소스인데요 이런에러가나옵니다... 도와주세요고수님들
글쓴이 이그니 작성시각 2014/06/12 15:23:18
댓글 : 6 추천 : 0 스크랩 : 0 조회수 : 17153   RSS
우선 모델페이지는 이렇게 구성되어있구요

<?php if (!defined('BASEPATH')) exit('No direct script access allowed');

class Board_m extends CI_Model
{
    function __construct()
    {
        parent::__construct();
    }

    function get_list($table='ci_board', $type='', $offset='', $limit='')                
    {
        $limit_query    = '';

        if( $limit != '' OR $offset != '')
        {
            $limit_query = 'LIMIT '.$offset.', '.$limit;
        }

        $sql    = "SELECT * FROM ".$table." ORDER BY board_id DESC".$limit_query;
        $query = $this->db->query($sql);

        if ( $type = 'count')
        {
            //전체의 개수를 반환
            $result = $query->num_rows();

            // $this->db->count_all($table);
        }
        else
        {
            // 게시물 리스트 반환
            $result    = $query->result();
        }

        return $result;
    }
}

컨트롤러에서 $this->board_m->get_list(ci_board) 형식으로 호출을하면
 
A PHP Error was encountered

Severity: Notice

Message: Undefined property: Board::$db

Filename: core/Model.php

Line Number: 52


Fatal error: Call to a member function query() on a non-object in C:\APM_Setup\htdocs\bbs\application\models\board_m.php on line 20

이런식으로 20번쨰줄
즉 $query =  $this->db->query($sql) 부분에서 에러가난다고하네요.....
뭐가잘못된걸까요...
 
 다음글 controller에서 view페이지로 이동할 때 배열... (2)
 이전글 도메인에서 index.php는 항상 없애고 www는 항... (3)

댓글

한대승(불의회상) / 2014/06/12 15:43:40 / 추천 0
database가 로드 되지 않았군요.
 
이그니 / 2014/06/12 16:03:57 / 추천 0
안녕하세요 불의화상님
database를 따로로딩을해야한단 말씀이신가요??
mysql은 on되있고 apmsetup도 실행된건 체크했는데 ci를 htdocs 에붙이는거 말구
$connect 같은표현으로 따로 database파일을 로딩해줘야하나요?
letsgolee / 2014/06/12 16:16:56 / 추천 0
차가 아무리 멋들어져도 키로 시동을 걸지 않으면 쓰지 못합니다. 마찬가지로 mysql데이터베이스가 있어도 php에서 connect를 해주지 않으면 쓰지 못하지요... 일반적으로 $link = mysql_connect()...이렇게 쓰던 것을 ci에서는 $this->load->database()이렇게 쓰면 됩니다. 다음을 읽어보시고 사용하시면 됩니다:

http://codeigniter-kr.org/user_guide_2.1.0/database/examples.html
이그니 / 2014/06/12 16:40:54 / 추천 0
컨트롤러에서 이미 $this->load->database()로 연결을 해준상태인데 불러오는 model에서도 마찬가지로해주는건가요?? 근데 model에서두 생성자[parent::__construct()부분] 아래에 연결해주었는데도같은에러가나오네요... 그냥 통으로 배껴서 공부해야겠네요
변종원(웅파) / 2014/06/12 17:40:16 / 추천 0
config/database.php 내용 확인해보세요. mysql host, id, password
이그니 / 2014/06/16 10:19:26 / 추천 0
감사합니다^^