Foros del Web » Programando para Internet » PHP »

problema con charset

Estas en el tema de problema con charset en el foro de PHP en Foros del Web. Estimados: tengo el siguiente porblema: convertir una cadena xml a simple_xml la cadena en la siguiente: $xml="<xml><tituloBib><titulo>Parámetros.</titulo></tituloBib></xml>"; si lo hago de esta manera $xml=simplexml_load_string($xml); me ...
  #1 (permalink)  
Antiguo 07/04/2008, 13:57
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 19 años, 11 meses
Puntos: 2
problema con charset

Estimados:

tengo el siguiente porblema:
convertir una cadena xml a simple_xml

la cadena en la siguiente:
$xml="<xml><tituloBib><titulo>Parámetros.</titulo></tituloBib></xml>";

si lo hago de esta manera

$xml=simplexml_load_string($xml);

me tira el siguiente arror:
parser error : Input is not proper UTF-8, indicate encoding !


pero si lo decodifico

$xml=utf8_decode($xml);
$xml=simplexml_load_string($xml);

cuando descompongo el objeto $xml, obtengo lo siguiente:

Par?tros.

como resuelvo esto?

muchas gracias desde ya.
  #2 (permalink)  
Antiguo 07/04/2008, 14:33
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Re: problema con charset

Tienes defindo el charset en la cabecera html?

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Quim
  #3 (permalink)  
Antiguo 08/04/2008, 07:22
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 19 años, 11 meses
Puntos: 2
Re: problema con charset

Hola, gracias por la respuesta.

No es una salida html, el xml viene por $_POST, lo convierto a objeto y luego armo una consulta a la base de datos, en donde realizo un update.
  #4 (permalink)  
Antiguo 08/04/2008, 08:36
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Re: problema con charset

A tu XML, le falta la declaración de que es un documento XML, y la definición de que tipo de charset es:
Código:
<?xml version="1.0" encoding="utf-8"?>
Saludos.
  #5 (permalink)  
Antiguo 08/04/2008, 11:44
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 19 años, 11 meses
Puntos: 2
Re: problema con charset

gracias gartorv

$xml="<?xml version='1.0' encoding='utf-8'?> <xml><tituloBib><titulo>Parámetros </titulo></tituloBib></xml>

$xml=simplexml_load_string($xml);

Esto me tira los warning, con el parse error que comenté anteriormente.
  #6 (permalink)  
Antiguo 08/04/2008, 11:55
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Re: problema con charset

Que tipo de archivo es el archivo de donde estas leyendo la variable $xml (también debe de estar codificado en utf-8).

Saludos.
  #7 (permalink)  
Antiguo 08/04/2008, 13:11
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 19 años, 11 meses
Puntos: 2
Re: problema con charset

no es un archivo, lo estoy recibiendo por post desde el cliente. Estoy usando AJAX

sería algo asi:

$_POST["xml"]="<?xml version='1.0' encoding='utf-8'?> <xml><tituloBib><titulo>Parámetros </titulo></tituloBib></xml>";

$xml=simplexml_load_string($_POST["xml"]);
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 21:43.