Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

n3tho

Preciso de uma funcao para remover acentos

Recommended Posts

Ola, pessoal

preciso de ajuda!

 

CODE
<?

$gets = explode("/",str_replace(strrchr($_SERVER["REQUEST_URI"], "?"), "", $_SERVER["REQUEST_URI"]));

function removerAcento($str){

$from = 'ÀÁÃÂÉÊÍÓÕÔÚÜÇàáãâéêíóõôúüç';

$to = 'AAAAEEIOOOUUCaaaaeeiooouuc';

return strtr($str, $from, $to);

}

$gets[2] = removerAcento($gets[2]);

 

?>

 

esse eh meu codigo pra remover o acento do gets[2] que é a palavra a ser buscada

mas ele nao retira os acentos,

nao sei se tem alguma coisa errada,

ou devo fazer outra coisa

me ajudem ai

Compartilhar este post


Link para o post
Compartilhar em outros sites

Essa função explode() sua está meio estranha.. :huh:

 

Dá uma olhada nela aqui, os parâmetros que você está passando está totalmente diferente do que ela aceita.

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Essa função explode() sua está meio estranha.. :huh:

 

Dá uma olhada nela aqui, os parâmetros que você está passando está totalmente diferente do que ela aceita.

 

[]'s

sim meu irmao, mas é que nao sei resolve-la,

o que eu preciso é deixar o gets sem acento

você poderia me ajudar ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

E como você quer resolver um problema sendo que tem outro pendurado nele?

 

Explique o que você pretendia fazer com o explode() para tentarmos ajudar.

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

E como você quer resolver um problema sendo que tem outro pendurado nele?

 

Explique o que você pretendia fazer com o explode() para tentarmos ajudar.

 

[]'s

intao mano, tenho este site aqui http://www.goospel.com.br

quando ele faz a busca sem acentos

funciona numa boa,

agora quando alguem digita acento na caixa de busca,

ele muda para outros caracteres.

obs: nao sou programador em php.

sou aprendiz.

preciso de uma variavel, que tenha a palavra busca sem acento,

e da outra variavel com acento, pra mim colocar no titulo da pagina

www.goospel.com.br/sites/jesus

 

a variavel gets[2] é jesus

 

 

quando busco por Cristãos no goospel ele retorna

http://www.goospel.com.br/sites/crist%E3os

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pra você ter essa palavra, ela não pode estar codificada do jeito que está. Algum mecanismo usado está fazendo isto, já que não é submetido direto, visto que você está utilizando url's amigáveis.

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pra você ter essa palavra, ela não pode estar codificada do jeito que está. Algum mecanismo usado está fazendo isto, já que não é submetido direto, visto que você está utilizando url's amigáveis.

 

[]'s

 

mas nao tem um jeito mano de me ajudar....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas você não está sabendo me informar como o sistema funciona, como eu vou ajudar? :huh:

 

Quero saber como você utiliza url's amigáveis, porque provavelmente é nesta parte que a codificação para URL deve estar sendo feita, transformando caracteres especiais no que você está acontecendo.

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fas isso.

 

function nonames($title){

$Fix = array(" + ");

$title = str_replace($Fix, "+", $title);

$Fix = array(" - "," ");

$title = str_replace($Fix, "-", $title);

$Fix = array("á","à","â","ä","ã");

$title = str_replace($Fix, "a", $title);

$Fix = array("Á","À","Â","Ä","Ã");

$title = str_replace($Fix, "a", $title);

$Fix = array("ç");

$title = str_replace($Fix, "c", $title);

$Fix = array("Ç");

$title = str_replace($Fix, "c", $title);

$Fix = array("é","è","ê","ë");

$title = str_replace($Fix, "e", $title);

$Fix = array("É","È","Ê","Ë");

$title = str_replace($Fix, "e", $title);

$Fix = array("í","ì","î","ï");

$title = str_replace($Fix, "i", $title);

$Fix = array("Í","Ì","Î","Ë");

$title = str_replace($Fix, "i", $title);

$Fix = array("ó","ô","ó","ò","õ");

$title = str_replace($Fix, "o", $title);

$Fix = array("Ó","Ô","Ó","Ò","Õ");

$title = str_replace($Fix, "o", $title);

$Fix = array("ú","ü","ù","û");

$title = str_replace($Fix, "u", $title);

$Fix = array("Ú","Ü","Ù","Û");

$title = str_replace($Fix, "u", $title);

$Fix = array(",","<",">",":",";","?","/","°","~","^","º","]","}","ª","[","{","´","`","§","=","_",")","(","*","¨","¬","%","¢","$","£","#","³","@","²","!","¹","\"","'","|","\\","€","™");

$title = str_replace($Fix, "", $title);

return $title;

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas você não está sabendo me informar como o sistema funciona, como eu vou ajudar? :huh:

 

Quero saber como você utiliza url's amigáveis, porque provavelmente é nesta parte que a codificação para URL deve estar sendo feita, transformando caracteres especiais no que você está acontecendo.

 

[]'s

intao

trabalho com o .htaccess

com este codigo

RewriteEngine On

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule .(/)?$ index_busca.php?m=$1&q=$2

 

 

e o codigo

pra busca é

<?

$gets = explode("/",str_replace(strrchr($_SERVER["REQUEST_URI"], "?"), "", $_SERVER["REQUEST_URI"]));

function removerAcento($str){

$from = 'ÀÁÃÂÉÊÍÓÕÔÚÜÇàáãâéêíóõôúüç';

$to = 'AAAAEEIOOOUUCaaaaeeiooouuc';

return strtr($str, $from, $to);

}

$gets[2] = removerAcento($gets[2]);

 

?>

 

a busca é feita em javascript fornecido pelo google

 

this.searchForm.execute("<? echo $gets[2] ?>");

 

nesta linha ai executo

o palavra

nesta execução é que eu queria tirar o acento,

pq dai quando a pessoa busca com acento, nao aparecem resultados

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola, pessoal

preciso de ajuda!

 

CODE
<?

$gets = explode("/",str_replace(strrchr($_SERVER["REQUEST_URI"], "?"), "", $_SERVER["REQUEST_URI"]));

function removerAcento($str){

$from = 'ÀÁÃÂÉÊÍÓÕÔÚÜÇàáãâéêíóõôúüç';

$to = 'AAAAEEIOOOUUCaaaaeeiooouuc';

return strtr($str, $from, $to);

}

$gets[2] = removerAcento($gets[2]);

 

?>

CODE

?

$gets = explode("/",str_replace(strrchr($_SERVER["REQUEST_URI"], "?"), "", $_SERVER["REQUEST_URI"]));

function nonames($title){

$Fix = array(" + ");

$title = str_replace($Fix, "+", $title);

$Fix = array(" - "," ");

$title = str_replace($Fix, "-", $title);

$Fix = array("á","à","â","ä","ã");

$title = str_replace($Fix, "a", $title);

$Fix = array("Á","À","Â","Ä","Ã");

$title = str_replace($Fix, "a", $title);

$Fix = array("ç");

$title = str_replace($Fix, "c", $title);

$Fix = array("Ç");

$title = str_replace($Fix, "c", $title);

$Fix = array("é","è","ê","ë");

$title = str_replace($Fix, "e", $title);

$Fix = array("É","È","Ê","Ë");

$title = str_replace($Fix, "e", $title);

$Fix = array("í","ì","î","ï");

$title = str_replace($Fix, "i", $title);

$Fix = array("Í","Ì","Î","Ë");

$title = str_replace($Fix, "i", $title);

$Fix = array("ó","ô","ó","ò","õ");

$title = str_replace($Fix, "o", $title);

$Fix = array("Ó","Ô","Ó","Ò","Õ");

$title = str_replace($Fix, "o", $title);

$Fix = array("ú","ü","ù","û");

$title = str_replace($Fix, "u", $title);

$Fix = array("Ú","Ü","Ù","Û");

$title = str_replace($Fix, "u", $title);

$Fix = array(",","<",">",":",";","?","/","°","~","^","º","]","}","ª","[","{","´","`","§","=","_",")","(","*","¨","¬","%","¢","$","£","#","³","@","²","!","¹","\"","'","|","\\","€","™");

$title = str_replace($Fix, "", $title);

return $title;

}

$gets[2] = nonames($gets[2]);

 

?>

nao deu certo o codigo que o willian me passou

 

o erro nao esta aqui ? $gets[2] = removerAcento($gets[2]);

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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