Ir para conteúdo
FabianoSouza

Tratar caracteres acentuados

Recommended Posts

Tenho uma function que recupera valores de um cookie.

 

O problema é que truca quando há algum caractere com acento.

Exemplo

 

Tássia   -   retorna assim:  T%C3%A1ssia

 

Acho que isso é UNICODE, né?

 

Bom, como é grande a lista de caracteres que podem receber acento, quero saber sem alguém já essa listinha pronta pra eu montar um replace.

Fiz um código que funciona. Só preciso mesmo dessa listinha para encher as variáveis unicode e normal

function charDecode(str) 
{
var unicode = '%C3%A0,%C3%A1'
, normal = 'à,á';

var strUnicode = unicode.split(',');
for(j = 0; j < strUnicode.length; j++){
for(k = 0; k < normal.length; k++)
{
	var tratada = str.replace(strUnicode[j], normal[k])
	}
}
   return tratada;
}

 

Obrigado desde já.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que a questão aqui possa ser: Não reinventar a roda....

var string = '%C3%A0,%C3%A1';
console.log( decodeURI(string) );

var outraString = 'Á é Í ó Ú';
console.log( encodeURI(outraString) );

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
Em 24/02/2021 at 19:31, Omar~ disse:

Acho que a questão aqui possa ser: Não reinventar a roda....


var string = '%C3%A0,%C3%A1';
console.log( decodeURI(string) );

var outraString = 'Á é Í ó Ú';
console.log( encodeURI(outraString) );

 

 

 

Obrigado @Omar~.

 

Realmente não tenho o seu conhecimento. Eu sou grato por várias soluções que você traz para os problemas que publico aqui.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por lordstarlight
      Olá amigos,
       
      Tenho uma tabela Character Set: UFT8 e  Collation: uft8_general_ci.
      Não consigo fazer um select onde possa ignorando maiúsculas, minúsculas, acentos e caracteres especiais.
      Já varri a internet e nada no original ou adaptado funcionou.
      Ignora maiúsculas e minúsculas ainda dá certo mais quanto vai para acentuação fico perdido.
       
      Tentei algo como:
      "SELECT DISTINCT * FROM livros WHERE tituloLivro LIKE _utf8'%".$termo."%' COLLATE utf8_unicode_ci OR tituloLivro LIKE '%".$termo."%'" Usei uft8_encode e uft8_decode na variável termo e ainda nada.
       
      Alguma dica?!
       
      Valeu
    • Por pwdheliosander
      Ola pessoal, por que o meu banco de dados está deste jeito sem aparecer os acentos? estou no phpMyadmin. 
       
      Como resolvo isso?
       

    • Por lvsis
      Olá.
       
      O meu problema é o seguinte:
       
      Tenho um texto salvo no meu banco de dados com um caracter acentuado e quando faço a busca desse texto no banco e o exibo na tela no lugar do caracter é exibido um símbolo.
      Só que quando faço o SELECT direto no sgbd ele mostra o caracter normalmente, já alterei o charset do php.ini para utf8 mas continua o problema.
      Não sei se tem há ver mas uso o PDO. 
    • Por Lúcio Marques
      Olá, bom dia para todos.
      Estou com um problema que já pesquisei e não deu certo as explicações que peguei na internet.
      Estou precisando de gravar palavras com acento no mysql e não grava. Segue com fica no banco de dados:
       
      Digito: lúcio andré
       
      e grava assim: andré oliveira lúcio
       
      Agradeço desde já.
    • Por luisnascimento
      Olá, estou fazendo um projeto de escola, onde meu site é um depósito de bebidas. Como todo site de venda, fez uma barra de pesquisa, para poder pesquisar os produtos, porém estou encontrando um problema ao realizar a pesquisa caso a palavra possua acentuação. Alguém saberia responder?
      Obs: essa é aminha string sql, funciona normal quando eu executo o query no phpmyadmin, mas no sistema, não funciona
       
       
      $_sql = "SELECT * FROM produto WHERE lower(nome) like '%$_pesquisa%' OR lower(palavra_chave) like '%$_pesquisa%' OR lower(palavra_chave) like '%$_pesquisa' OR lower(palavra_chave) like '$_pesquisa%'";
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.