Onde está o código da função get_sconfig? Em uma library, helper, plugin?
Se for o caso, precisa do super objeto do framework da seguinte forma: $CI =& get_instance(); $resp = $CI->session->userdata($conf); Veja mais em *Utilizing CodeIgniter Resources within Your Library* http://codeigniter.com/user_guide/general/creating_libraries.html Att, Vinicius Cruz 71 8821-8799 http://www.zime.com.br/ Em 27 de fevereiro de 2011 05:32, Pablo Augusto <[email protected]>escreveu: > > Eu dei uma estudada mais aprofundada no CI e a classe Loader e a que > instancia todas as outras por isso nao funciona > pois ate as sessions nao estao instanciadas ainda. Ou seja, estou tentando > acessar algo que ainda nao foi declarado ou instanciado, > e ai que estava o problema. > > Vou ter de estudar mais para ver se e possivel implementar isso, pois > infelizmente, apenas nessa classe e possivale alterar > o diretorio das views para criar uma infra estrutura de templates /views > para /templattes/template1 etc. > > A coisa e mais da estrutura do CodeIgniter do que de orientacao a objeto > alguem tem alguma > ideia de como contornar essa situacao. > > minha necessidade e verificar no __construct() da classe MY_Load > se existe um valor definido para a variavel de sessao 'language' para > carregar > as views traduzidas no idioma que esta na session. > > Via config.php ele funciona, mas como nao consigo instanciar a classe > sessions na MY_Loader > ele sempre retorna vazio usando $_SESSION['language']. > > > E infelizmente, pelo que vi essa e a unica forma de alterar a localizacao e > nome do diretorio de views > alterando a variavel $this->_ci_view_path = 'caminho/path/views'; no > construct da classe MY_Loader > correto? Ou ha outra forma? > > > Abcs. > > > ----------------------------------------------------------------------------------- > > A titulo de curiosidade segue a funcao final que ficou dentro da classe > MY_Loader > Eu consigo acessar normalmente a session, mas como ela e instanciada antes > da classe de > sessions do CodeIgniter, ela acaba sendo uma sessao diferente. > > Vou tentar pegar os parametros de config da session no arquivo de > configuracao e iniciar a sessao com eles para > ver se funciona. > > public function get_config_value($conf = '') > { > > //Se nao foi definido o valor a ser localizado > if ($conf == '' ) return FALSE; > > //Verifica a configuracao esta setada via sessions > if ( isset($_SESSION[$conf])){ > return $_SESSION[$conf]; > } > > //verifica se esta setado via config.php > else { > $config =& get_config(); > if (isset( $config[$conf])) > return $config[$conf]; > > else return FALSE; //se nao achou nenhum valor retorna false > } > > > > * > * > *Pablo Augusto > SEO | SEM | Marketing Digital > > * > *Me siga no Twitter:* @pabloaugusto <http://twitter.com/pabloaugusto> > *Artigos sobre Otimização de sites <http://webtags.com.br/seo>, Marteking > Digital e Mídias Sociais:* WebTags <http://webtags.com.br> > MSN: [email protected] > SKYPE: [email protected] > EMAIL: [email protected] > > [image: Linkedin] <http://linkedin.com/in/pabloaugusto> [image: > Twitter]<http://twitter.com/pabloaugusto> > [image: Facebook] <http://facebook.com/pabloaugusto> [image: > Flickr]<http://flickr.com/photos/pabloaugusto> [image: > Youtube] <http://youtube.com/pabloaugustoo> [image: > FormSpring]<http://formspring.me/opabloaugusto> [image: > LastFM] <http://lastfm.com.br/user/pabloaugustoo> [image: > DeviantART]<http://deviantart.com/pabloaugustoo> [image: > Tumblr] <http://pabloaugusto.tumblr.com/> [image: > Vimeo]<http://vimeo.com/pabloaugusto> [image: > del.icio.us] <http://del.icio.us/pabloaugusto> [image: > Slideshare]<http://slideshare.net/pabloaugusto> [image: > Friendfeed] <http://friendfeed.com/pabloaugusto> > > > > 2011/2/27 [email protected] <[email protected]> > > Pablo, >> >> Esse erro ocorre quando vc faz uma chamada $this fora do contexto de uma >> classe ou numa chamada estática ao método. No seu caso está ocorrendo a >> primeira hipótese, ou seja, sua função não está definida no escopo de uma >> classe. >> >> A solução para isso é simples. Você deve inserir o objeto $session no >> escopo da função usando o globals ou passa-lo como parâmetro. E, >> evidentemente, retirar o $this da jogada. >> >> Assim: >> function get_sconfig($conf = '') >> { >> global $session; >> ... >> >> //Verifica a configuracao esta setada via sessions >> $resp = $session->userdata($conf); >> ... >> >> ou assim: >> function get_sconfig($conf = '', $session) >> { >> ... >> >> //Verifica a configuracao esta setada via sessions >> $resp = $session->userdata($conf); >> ... >> >> Abraço, >> >> -- >> Iuri Jacob >> Engenheiro de Software >> IMPA - Instituto de Matemática Pura e Aplicada >> http://www.iurijacob.com.br/ >> http://br.linkedin.com/in/iurijacob >> http://twitter.com/#!/iurijacob >> >> Tecnologia no Século XXI >> http://www.bytecodex.com/blog/ >> >> >> Em 26 de fevereiro de 2011 20:50, Pablo Augusto >> <[email protected]>escreveu: >> >>> Boa noite pessoal, veja se alguem tem uma ideia de como resolver esse >>> problema. >>> >>> Estou fazendo uma funcao para o Code Igniter 2 para checar se um valor de >>> configuracao >>> esta definido via sessions e via config.php. >>> >>> Quanto vou checar se o valor passado por parametro na chamada da funcao >>> esta disponivel >>> na session o seguinte erro ocorre: >>> >>> *Fatal error*: Using $this when not in object context in * >>> D:\xampp\htdocs\XXXXXXX\application\core\MY_Loader.php* on line *34* >>> * >>> * >>> A linha 34 e justamente essa, aonde eu pego o valor do parametro $conf e >>> tento recuperar o valor que esta na session: >>> *$resp = $this->session->userdata($conf);* >>> >>> A chamada da funcao esta sendo feita da seguinte forma >>> *$view_path = get_sconfig('view_path');* >>> >>> >>> Qual seria o problema, o this nao esta instanciado ainda na chamada do >>> MY_loader? >>> Como poderia fazer essa funcao para checar se a variavel esta na session >>> ou no config file entao? >>> >>> Abcs >>> >>> -------------------------------------------------------------------------------------------- >>> Segue abaixo a funcao completa para elucidar todo cenário. >>> >>> function get_sconfig($conf = '') >>> { >>> //Se nao foi definido o valor a ser localizado >>> if ($conf == '' ) return FALSE; >>> >>> //Verifica a configuracao esta setada via sessions >>> $resp = $this->session->userdata($conf); >>> $resp = (! isset($resp)) ? '' : $resp; >>> >>> //Se nao esta setada via sessions verifica se esta setado via >>> config.php >>> if ($resp == '') >>> { >>> $resp = $config[$conf]; >>> $resp = (! isset($resp)) ? '' : $resp; >>> } >>> >>> //Se conseguiu localizar um valor definido para a configuracao retorna >>> ele >>> //senao retorna false >>> if ($resp == '') return FALSE; >>> else return $resp; >>> } >>> >>> >>> >>> * >>> * >>> *Pablo Augusto >>> SEO | SEM | Marketing Digital >>> >>> * >>> *Me siga no Twitter:* @pabloaugusto <http://twitter.com/pabloaugusto> >>> *Artigos sobre Otimização de sites <http://webtags.com.br/seo>, >>> Marteking Digital e Mídias Sociais:* WebTags <http://webtags.com.br> >>> MSN: [email protected] >>> SKYPE: [email protected] >>> EMAIL: [email protected] >>> >>> [image: Linkedin] <http://linkedin.com/in/pabloaugusto> [image: >>> Twitter] <http://twitter.com/pabloaugusto> [image: >>> Facebook]<http://facebook.com/pabloaugusto> [image: >>> Flickr] <http://flickr.com/photos/pabloaugusto> [image: >>> Youtube]<http://youtube.com/pabloaugustoo> [image: >>> FormSpring] <http://formspring.me/opabloaugusto> [image: >>> LastFM]<http://lastfm.com.br/user/pabloaugustoo> [image: >>> DeviantART] <http://deviantart.com/pabloaugustoo> [image: >>> Tumblr]<http://pabloaugusto.tumblr.com/> [image: >>> Vimeo] <http://vimeo.com/pabloaugusto> [image: >>> del.icio.us]<http://del.icio.us/pabloaugusto> [image: >>> Slideshare] <http://slideshare.net/pabloaugusto> [image: >>> Friendfeed]<http://friendfeed.com/pabloaugusto> >>> >>> -- >>> http://www.phprio.org/ >>> Pedidos de Camisetas: >>> http://sites.google.com/a/phprio.org/index/camisetas >>> Pedidos de Elephpants: >>> http://sites.google.com/a/phprio.org/index/elephant >>> >> >> >> -- >> http://www.phprio.org/ >> Pedidos de Camisetas: >> http://sites.google.com/a/phprio.org/index/camisetas >> Pedidos de Elephpants: >> http://sites.google.com/a/phprio.org/index/elephant >> > > > > _______________________________________________ > [email protected] > http://www.codeigniter.com.br > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br > > --------------------------- > Oportunidade de negócio > http://www.franquiasargohost.net > --------------------------- > >
_______________________________________________ [email protected] http://www.codeigniter.com.br http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br --------------------------- Oportunidade de negócio http://www.franquiasargohost.net ---------------------------

