Foros del Web » Programando para Internet » PHP »

utf-8 (letra "à")

Estas en el tema de utf-8 (letra "à") en el foro de PHP en Foros del Web. Buenos dias a todos, Estoy migrando una DB u estoy pasando los valores tipo varchar o text con la funcion str_replace El array de conversion ...
  #1 (permalink)  
Antiguo 08/10/2009, 03:23
 
Fecha de Ingreso: septiembre-2006
Mensajes: 349
Antigüedad: 17 años, 6 meses
Puntos: 0
utf-8 (letra "à")

Buenos dias a todos,

Estoy migrando una DB u estoy pasando los valores tipo varchar o text con la funcion str_replace

El array de conversion que utilizo

Código PHP:
$search = array("á""ó""í""ú""é""ñ"
"Á""É""Ó""Í""Ú""Ñ"
"à""è""ì""ò""ù""ï",  
"À""È""Ì""Ò""Ù"
"¿","ü","î","¡","Ü","Î","ç","Ç""Ï",  
"&");
$replace   = array("á""ó""Ã*""ú""é""ñ"
"Ã""É""Ó""Ã""Ú""Ñ",
 
"à""è""ì""ò""ù"
 
"À""È""Ì""Ò""Ù"
 
"¿","ü","î","¡","Ãœ","ÃŽ","ç","Ç","Ã",
 
"&"); 
Esta funcionando correctamente con una exepcion de la letra "à".
Esta letra tiene que ser reemplazada por "Ã ", pero el resultado final se muestra con signo "?". Como si no reconociera el caracter "Ã ".

Ejemplo de cadena
Código PHP:
$cadena "Agricultura orgànica";

$newString str_replace($search$replace$cadena);

//el strgin que tengo nuevo en la tabla es "Agricultura orgànica "

// el string que esta mostrandose en la pagina "Agricultura org� nica" 

Lo curioso que solo pasa con letra "à". Las demas letras se convierten y se muestran correctamente. La pagina que los muestra logicamente esta en utf-8.

Gracias a todos.
  #2 (permalink)  
Antiguo 08/10/2009, 05:46
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: utf-8 (letra "à")

Te resultará más práctico usar utf_encode para convertirlo.

Saludos.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 08/10/2009, 06:22
 
Fecha de Ingreso: septiembre-2006
Mensajes: 349
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: utf-8 (letra "à")

Utilizar esta funcion no es tan simple ya que en la tabla existen datos ya codificados en utf-8 y si codificas una cadena que ya esta en utf-8 otra vez se corrumpe.
  #4 (permalink)  
Antiguo 08/10/2009, 06:32
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: utf-8 (letra "à")

Cita:
Iniciado por viktoria Ver Mensaje
Utilizar esta funcion no es tan simple ya que en la tabla existen datos ya codificados en utf-8 y si codificas una cadena que ya esta en utf-8 otra vez se corrumpe.
prueba con la libreria iconv o multibyte, la funcion mb_convert_encoding es mucho más completa y creo que te servirá
  #5 (permalink)  
Antiguo 08/10/2009, 06:50
 
Fecha de Ingreso: septiembre-2006
Mensajes: 349
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: utf-8 (letra "à")

No puedo instalar ninguna libreria en el servidor que no es mio, lo puedo hacer en local logicamente, pero quiero entender porque me esta fallando solo una letra.

Tiene algo que ver que collation esta cocnfigurado como "utf8_general_ci" y tiene que ser "utf8_spanish_ci" ? Alguna configuracion que esta mal...

Les adjunto una parte de datos de salida. Como podeis ver solo falla una letra.

Código PHP:
<type id="487">Agència</type>
<
type id="63">Aglomeració</type>
<
type id="476">Agricultura convencional</type>
<
type id="475">Agricultura org&#65533; nica</type>
<type id="216">Ajustament fiscal</type>
<
type id="636">An&#65533; lisi cost-benefici</type>
<type id="533">An&#65533; lisi de Decisió Multi-criteri</type>
<type id="461">An&#65533; lisi multinivell</type>
<type id="635">analisis</type>
<
type id="603">AsseguranÇa de propietat</type>
<
type id="543">Assimilació</type>
<
type id="505">Auditor</type>
<
type id="424">Avaluació</type>
<
type id="459">Avaluació dels serveis públics</type>
<
type id="373">Èrees metropolitanes</type>
<
type id="233">Benestar</type>
<
type id="632">Bohemis</type>
<
type id="78">Capacitat fiscal</type>
<
type id="56">Capital hum&#65533; </type>
<type id="170">Capital públic</type>
<
type id="488">Captura</type>
<
type id="383">Característiques de la indústria</type>
<
type id="55">Carreteres</type>
<
type id="175">Catalunya</type>
<
type id="391">Centres tecnològics</type>
<
type id="572">Child Care</type>
<
type id="74">Cicle del producte</type>
<
type id="75">Ciutats</type>
<
type id="224">Clusters industrials</type>
<
type id="317">Competència fiscal</type>
<
type id="40">Competència política</type>
<
type id="221">Competència referencial</type>
<
type id="407">Compliment fiscal</type>
<
type id="229">Comportament pro-cívic</type>
<
type id="479">Comptabilitat social i mediambiental</type>
<
type id="323">Comunitats Autònomes</type>
<
type id="304">Concentració geogr&#65533; fica</type>
<type id="434">Controls del creixement urb&#65533; </type>
<type id="169">Convergència</type>
<
type id="573">Cost of Children</type>
<
type id="48">Creació d'empreses</type>
<type id="54">Creixement</type>
<type id="135">Creixement econòmic</type>
<type id="519">Creixement municipal de l'
ocupació</type>
<
type id="629">Creixement regional</type>
<
type id="365">Criteris delecció</type>
<
type id="478">Cultiu convencional</type>
<
type id="477">Cultiu org&#65533; nic</type>
<type id="228">Cumpliment fiscal</type>
<
type id="382">Dades de panel</type>
<
type id="43">Dèficit</type
Un cordial saludo, Victoria
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:56.