Achei um arquivo que eu usava aqui, ta assim:

function __construct($params = array()) {
        parent::__construct($params);
        $this->CI =& get_instance();
}

Em 11/02/08, Henrique de Castro <[EMAIL PROTECTED]> escreveu:
>
> Eu extendi.. inclusive usei em 2 classes, em uma library de grid que fiz e
> no My_validation tb.. hj a noite dou uma confirmada no código que fiz e
> qualquer coisa eu te falo..
> Um detalhe, no parent chame o __construct... se não me engano dessa forma
> que vc fez é meio PHP4, mas não tenho tanta certeza disso.
>
> Em 11/02/08, Marco Telles <[EMAIL PROTECTED]> escreveu:
> >
> > Oi Henrique,
> >
> > O construtor está assim:
> >     function __construct() {
> >         parent::CI_Validation();
> >         $CI =& get_instance();
> >     }
> >
> > Olhei o pagination e não vi nada de diferente. No construtor ele só
> > inicializa os parâmetros do pagination e trabalha direto com o $CI em:
> >         // Determine the current page number.
> >         $CI =& get_instance();
> >         if ($CI->uri->segment($this->uri_segment) != 0)
> >
> > No guia do CI fala em usar esse recurso na criação de nossas classes,
> > mas não fala nada sobre isso na extensão de uma classe.
> >
> > "Para acessar os recursos nativos do Code Igniter dentro de sua
> > biblioteca use a função get_instance(). Esta função retorna o super
> > objeto Code Igniter."
> >
> > Quando vc fez isso foi numa classe que criou ou extendeu ???
> >
> > Abs
> >
> >
> >
> > Henrique de Castro escreveu:
> > > Tô sem meus códigos do CI agora, mas fiz isso em uma library, talvez
> > > vc não tenha chamado o método contrutor pai.. de tudo, olha a library
> > > pagination, se não me engano, ela usa a instancia do CI dessa forma.
> > > Se até a noite vc não tiver conseguido eu olho como fiz qdo chegar em
> > > ksa e te passo.
> > >
> > > Em 11/02/08, *Marco Telles* <[EMAIL PROTECTED]
> > > <mailto:[EMAIL PROTECTED]>> escreveu:
> > >
> > >     Fiz isso no construtor e dá erro
> > >
> > >             $CI =& get_instance();
> > >             $CI->load->database();
> > >
> > >     Message: Undefined variable: CI
> > >
> > >     Filename: libraries/MY_Validation.php
> > >
> > >     Line Number: 28
> > >
> > >
> > >     Message: Trying to get property of non-object
> > >
> > >     Filename: libraries/MY_Validation.php
> > >
> > >     Line Number: 28
> > >
> > >     *Fatal error*: Call to a member function from() on a non-object in
> > >     *libraries/MY_Validation.php* on line *28
> > >     *
> > >
> > >     *linha 28:        $CI->db->from('user');
> > >     *
> > >
> > >
> > >
> > >     Muita sorte para nós!
> > >
> > >     Marco Telles
> > >
> > >
> > >
> > >     Henrique de Castro escreveu:
> > >     > Pega a instancia do CI e usa, tipo:
> > >     > $CI =& get_instance();
> > >     > $CI->load->database();
> > >     > etc.
> > >     >
> > >     > Em 10/02/08, *Marco Telles* <[EMAIL PROTECTED]
> > >     <mailto:[EMAIL PROTECTED]>
> > >     > <mailto:[EMAIL PROTECTED]
> > >     <mailto:[EMAIL PROTECTED]>>> escreveu:
> > >     >
> > >     >     Extendi a classe Validation para o MY_Validation e gostaria
> > de
> > >     >     acrescentar métodos de validação no BD, só que não está
> > dando
> > >     >     certo :-(
> > >     >
> > >     >     Ex.:
> > >     >     1. No controler eu chamo o model user para validar os dados
> > >     do usuário
> > >     >     2. No model user eu carrego o Validation
> > >     >     3. Para o email, criei uma regra:
> > >     >     $regras['userEmail'] =
> > >     >
> > >
> > "trim|required|valid_email|max_length[100]|unique_email[$this->userEmail]";
> > >     >     4. No MY_Validation eu criei o método:
> > >     >     unique_email( $email ) onde eu verifico se o email já existe
> > >     >     cadastrado
> > >     >
> > >     >     E aí é que está o problema, como acessar o bd dentro de um
> > >     método
> > >     >     de uma
> > >     >     classe extendida (MY_Validation) ???
> > >     >
> > >     >     Abs e um bom início de semana para todos!!
> > >     >
> > >     >
> > >     >     --
> > >     >     Muita sorte para nós!
> > >     >
> > >     >     Marco Telles
> > >     >
> > >     >
> > >     >
> > >     >
> > >     >     _______________________________________________
> > >     >     Lista mailing list
> > >     >     [email protected] <mailto:[email protected]>
> > >     <mailto:[email protected] <mailto:[email protected]
> > >>
> > >     >
> > >
> > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> > >     >
> > >     >
> > >     >
> > >
> > ------------------------------------------------------------------------
> > >     >
> > >     > _______________________________________________
> > >     > Lista mailing list
> > >     > [email protected] <mailto:[email protected]>
> > >     >
> > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> > >     >
> > >
> > >     _______________________________________________
> > >     Lista mailing list
> > >     [email protected] <mailto:[email protected]>
> > >
> > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> > >
> > >
> > >
> > ------------------------------------------------------------------------
> > >
> > > _______________________________________________
> > > Lista mailing list
> > > [email protected]
> > > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> > >
> >
> > _______________________________________________
> > Lista mailing list
> > [email protected]
> > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> >
>
>
_______________________________________________
Lista mailing list
[email protected]
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br

Responder a