Ir para conteúdo

POWERED BY:

Arquivado

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

criatividade zero

acentos - critico

Recommended Posts

try this

$str = $_GET['q'];
$enc = mb_detect_encoding( $str );
if( !isset( $_SERVER['HTTP_REFERER'] ) or $enc != 'UTF-8' )
{
$str = mb_convert_encoding( $str, 'UTF-8', 'auto' );
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

acabei de instalar o PHP Version 5.3.4

 

o codigo que você passou, em ambos os casos caem no IF como utf

se nao for pedir muito... você poderia testar isso na sua maquina?

assim saberiamos se é OS, versão, ou outa coisa

 

aqui uso XP, Apache 2.2.17 e PHP 5.3.4

ja estou desanimado e cansado :(

Compartilhar este post


Link para o post
Compartilhar em outros sites

o codigo que você passou, em ambos os casos caem no IF como utf
se nao for pedir muito... você poderia testar isso na sua maquina?

e.. ? qual resultado saiu ?

Compartilhar este post


Link para o post
Compartilhar em outros sites
<?php
date_default_timezone_set('America/Sao_Paulo');
error_reporting( E_ALL ); 
ini_set( 'display_errors', 1 );

define( 'CHARSET',   'UTF-8' );

ini_set( 'default_charset', CHARSET );
ini_set( 'mbstring.http_output', CHARSET );
ini_set( 'mbstring.internal_encoding', CHARSET );

header( 'Content-Type: text/html; charset=' . CHARSET );

$str = $_GET['q'];
echo urldecode($str);
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não sei se vai ajudar, mas eu criei uma função que faz essa conversão. O único problema é que se eu utilizar ele sem ser função, direto no codigo, ele funciona perfeitamente, mas se eu uso ele como função, ele não faz a linha onde troca os acentos. ($var) Agora, se eu coloco a texto no lugar da variavel $var, entre aspas, funciona perfeitamente como função. Eu preciso dar algum comando na variavel, para a variavel $var funcionar corretamente???

 

function trataTxt($var) {

$acentos = array("á", "à", "â", "ã", "ª", "é", "è", "ê", "ó", "ò", "ô", "õ", "º", "í", "ì", "î", "ú", "ù", "û", "ç", "Á", "À", "Â", "Ã", "É", "È", "Ê", "Ó", "Ò", "Ô", "Õ", "Í", "Ì", "Î", "Ú", "Ù", "Û", "Ç");
$letras = array("a", "a", "a", "a", "a", "e", "e", "e", "o", "o", "o", "o", "o", "i", "i", "i", "u", "u", "u", "c", "A", "A", "A", "A", "E", "E", "E", "O", "O", "O", "O", "I", "I", "I", "U", "U", "U", "C");
$var = str_replace($acentos, $letras, $var);

return $var;
}

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.