2012-07-09 5 views
0

나는이 소리가 너무 여러 번 재현된다는 것을 알고 있습니다. 그러나 나는 그것을 해결할 수 없습니다.는 codeigniter를 사용하여 데이터베이스에 연결할 수 없습니다.

내가 mysql을 내 응용 프로그램을 연결을 시도,이 내가 시도 무엇인가 (I 이러한 옵션 중 하나, 둘 시도) : application\config\autoload.php

  1. $autoload['libraries'] = array('database');을,하지만 난 Fatal error: Call to a member function get() on a non-object in /Users/zakkafm/Sites/CodeIgniter/application/models/My_models.php on line 15

  2. 있어
  3. $this->load->database();__construct()application\models\My_models.php (에도 나는 parent::__construct()을 추가,하지만 난 Fatal error: Call to a member function database() on a non-object in /Users/zakkafm/Sites/CodeIgniter/application/models/My_model.php on line 7

01를 얻었다

그래서 여기에 무슨 문제가있을 수 있습니까?

편집 : 이것은 내 database.php입니다.

$active_group = 'default'; 
$active_record = TRUE; 
$db['default']['hostname'] = 'localhost'; 
$db['default']['username'] = 'root'; 
$db['default']['password'] = ''; 
$db['default']['database'] = 'trial'; 
$db['default']['dbdriver'] = 'mysql'; 
$db['default']['dbprefix'] = ''; 
$db['default']['pconnect'] = TRUE; 
$db['default']['db_debug'] = TRUE; 
$db['default']['cache_on'] = FALSE; 
$db['default']['cachedir'] = ''; 
$db['default']['char_set'] = 'utf8'; 
$db['default']['dbcollat'] = 'utf8_general_ci'; 
$db['default']['swap_pre'] = ''; 
$db['default']['autoinit'] = TRUE; 
$db['default']['stricton'] = FALSE; 

해결됨 !!!

이 모든 것은 Eclipse의 자동 완성으로 system/core/Controller.phpsystem/core/Model.php에 추가 된 것입니다.

+0

당신이 자동으로로드하는 것이 좋지만 My_model에 문제가있는 것 같습니다. 내용을 업데이트 해 주시겠습니까? – Tjkoopa

+0

문제가 해결되었습니다. 게시물의 "해결 된 부분"을 읽어주십시오. – zfm

답변

0

은 흠 .. 난 당신이 database.php 설정으로 자동으로 데이터베이스에 연결됩니다 알고 당신이 당신의 My_models.php에

$this->load->database(); 

을 추가 사촌이없는 생각 파일. 따라서, My_models.php 파일 &에서 제거하십시오.

class My_models extends CI_Model { 

    /** 
    * Constructor 
    */ 
    function __construct() 
    { 
     parent::__construct(); 
    } 

    function something(){ 
    // your model code goes here 
    } 

} 

은 또한 만 autoload를 활성화해야하고 유지 (갈 수 있습니다

는 그냥해야 당신이 $this->load->database();를 호출하지 않아야 My_models.php에서

+0

사용하지 않음 ... 나는이 두 가지를 옵션으로 둡니다. 따라서 오토로드 또는로드 - 데이터베이스를 모델에 추가했습니다. – zfm

+0

그래서 2 개의 데이터베이스 연결 옵션 (자동 및 수동)으로 1 개의 데이터베이스에 연결하려고합니까? 만약 내가 틀렸다고 생각하지 않는다면, 2 개의 다른 데이터베이스를 사용하고 있다면 pconnect를 FALSE로 설정 한 것처럼 수동으로 데이터베이스를로드 할 수 있습니다. – Yagi

+0

두 데이터베이스에 너무 멀리 가지 않아도 단일 데이터베이스에 연결할 수 없습니다. – zfm

0

:) 도움이되기를 바랍니다 PHP의 경우 MYSQL 라이브러리를로드해야합니다.

여기에 오류가있을 수 있습니다 (확실하지 않으므로 코드가 표시되지 않음).

Fatal error: Call to a member function get() on a non-object in  
/Users/zakkafm/Sites/CodeIgniter/application/models/My_models.php on line 15 
+0

오류는 정확히 autoload ...를 사용할 때의 오류입니다.이 두 숫자는 옵션이므로 첫 번째 또는 두 번째 중 하나를 사용합니다 ... – zfm

관련 문제