Foros del Web » Programando para Internet » PHP »

Problemas con XML en PHP

Estas en el tema de Problemas con XML en PHP en el foro de PHP en Foros del Web. Hola a todos: Tengo un proyecto web que estoy migrando de PHP4 a PHP5. He instalado PHP5 con apache 2.0 y mysql 4 y después ...
  #1 (permalink)  
Antiguo 01/12/2004, 10:51
 
Fecha de Ingreso: enero-2002
Ubicación: Cádiz, España
Mensajes: 96
Antigüedad: 15 años, 11 meses
Puntos: 0
Problemas con XML en PHP

Hola a todos:

Tengo un proyecto web que estoy migrando de PHP4 a PHP5. He instalado PHP5 con apache 2.0 y mysql 4 y después de varios problemillas todo va bien. En mi proyecto utiliza las siguiente clases para trabajar con archivos XML:

http://sourceforge.net/projects/phpxpath/

PHPXPath es una clase PHP que utiliza las funciones nativas de XML de PHP, siendo muy fácil de trabajar con ellas.

El problema que tengo que es cuando tengo un XML con acentos me pega una casque. Con PHP 4 no pasaba.

Creo que es de la configuración de PHP aunque no lo tengo muy claro, ¿sabéis algo al respecto?

Gracias a todos y un saludo
__________________
http://www.javielinux.com
  #2 (permalink)  
Antiguo 01/12/2004, 11:10
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Podría ser por la configuración de tu "char-set" .. No sé si de Apache (revisalo en tu httpd.conf en AddDefaultCharset ... intenta que sea: ISO-8859-1)

Pero .. deberías poner el código que usas y el error concreto que obtienes.

Un saludo,
  #3 (permalink)  
Antiguo 02/12/2004, 02:47
 
Fecha de Ingreso: enero-2002
Ubicación: Cádiz, España
Mensajes: 96
Antigüedad: 15 años, 11 meses
Puntos: 0
....

Vale. He comprobado la configuración de Apache y está en ISO-8859-1. Me he puesto ha hacer un pequeño archivo PHP para que vieses el error y cual ha sido mi sorpresa que cuando lo he ejecutado ha funcionado. Pero los caracteres que aparecen en lugar de los acentos, son caracteres extraños como cuando la codificación del navegador no está bien.

Pongo el ejemplo:

XML

Código:
<?xml version="1.0" encoding="iso-8859-1"?>
<datos>
	<persona>
		<nombre>Javier</nombre>
		<apellido>Pérez</apellido>
	</persona>
</datos>
PHP

Código:
<?
include("XPath.class.php");
$xmlPath = new XPath();
$xmlPath->importFromFile("datos.xml");
$nodoData = $xmlPath->getNode("/datos[1]/persona[1]/apellido[1]");
echo $nodoData["textParts"][0];
?>
Esto lo que me escribe es "Pérez", tal como lo escribo. Lo que me pasa que algunos archivos cuando utilizo acentos me da el siguiente error:

Código:
XPath error in XPath.class.php:1727 In importFromString(): 
XML error in given file secciones.xml' on line 7 column 104. 
Reason:Invalid character
Y en otros me devuelve los caracteres pero con una mala codificicación.

¿sabéis de que puede ser?

gracias por todo
__________________
http://www.javielinux.com
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 12:13.