@Marcia,

Já tentou utilizar a função ascii_to_entities(), do *Text Helper*? Ela deu
jeito nos problemas que tive com acentuação, que tive.

Att.,

—————————————————————————
-  erickpatrick.com - nomnmo.com - rpgdomestre.com  -



2011/11/5 PiXwell Web Design <[email protected]>

> Boa tarde Grupo,
>
>
>
> Estou passando por um “probleminha” com o CI .... acentuação na conversão
> do
> texto ...
>
>
>
> Minha situação:
>
>
>
> Preciso receber um valor de um formulário e gravá-lo no BD, mas tenho que
> “capitalizá-lo” primeiro (1ª letra maiúscula):
>
>
>
> ucfirst(strtolower($this->input->post('nomeCombs')));
>
>
>
> A função strtolower() não reconhece acentuação e substitui letras
> acentuadas
> por “?” (interrogação) ... fiz uma pesquisa e achei algumas funções para
> conversão de textos, e baseados nelas fiz uma biblioteca para isso, testei
> fora do CI e funciona perfeitamente, mas qdo carrego no controller e uso
> para conversão, ela não funciona em letras acentuadas ... se tá maiúscula,
> continua maiúscula, se ta minúscula, continua minúscula.
>
>
>
> Será que fiz certo? Sou iniciante, fiz essa biblioteca seguindo o tuto do
> Guia de usuário do  Codeigniter:
> http://www.codeigniter.com.br/manual/general/creating_libraries.html
>
>
>
>
>
> Código no controller:
>
>
>
>
>
> public function incluir()
>
> {
>
>            $this->load->library('string_converter');
>
>            $campo['combustivel_nome'] =
> $this->string_converter->capitalize($this->input->post('nomeCombs'));
>
>            $this->combustivel_model->insert($campo);
>
>            redirect('admin/combustivel', 'refresh');
>
>      }
>
>
>
> Minha biblioteca (se for útil a alguém, pooooode copiar =]  ):
>
>
>
> <?php if ( ! defined('BASEPATH')) exit('Acesso proibido!');
>
>
>
> class String_converter
>
> {
>
>
>
>      public function lower($palavra)
>
>      {
>
>            return $palavra =
>
> strtr(strtolower($palavra),"ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÜÚÞß","àáâãäåæçèéêëìíî
> ïðñòóôõö÷øùüúþÿ");
>
>      }
>
>
>
>      public function upper($palavra)
>
>      {
>
>            return $palavra =
>
> strtr(strtoupper($palavra),"àáâãäåæçèéêëìíîïðñòóôõö÷øùüúþÿ","ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎ
> ÏÐÑÒÓÔÕÖרÙÜÚÞß");
>
>      }
>
>
>
>      public function capitalize($palavra)
>
>      {
>
>            $str = $this->lower($palavra);
>
>            return $this->upper(substr($str, 0, 1)) . substr($str, 1,
> strlen($str));
>
>      }
>
> }
>
>
>
>
>
>
>
>
>
> Marcia Silva
> web designer
>
>
>
>  <http://www.pixwell.com.br/> www.pixwell.com.br
> Twitter:  <http://www.twitter.com/pixwell> @pixwell
>
>
>
> _______________________________________________
> [email protected]
> http://www.codeigniter.com.br
> http://mail.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://mail.codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br

---------------------------
Oportunidade de negócio
http://www.franquiasargohost.net
---------------------------

Responder a