Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/08/2011, 04:41
RobZab
 
Fecha de Ingreso: enero-2011
Ubicación: Bilbao
Mensajes: 18
Antigüedad: 13 años, 10 meses
Puntos: 0
Problema codificación XML

Muy buenas a tod@s,

No estoy seguro de si el foro de Javascript es el más adecuado pero allá voy:

Desde un formulario recojo ciertos datos y con ellos genero un string con formato XML, que posteriormente envio mediante NUSOAP (PHP) a un servidor. Este servidor recoge ese string y genera un fichero .xml

El problema está en que el string no le llega correctamente formateado al servidor.

Pongo ejemplos:

1. Genero el string(xml) a mano con javascript:

Código PHP:
xml_ajustes = "<?xml version='1.0' encoding='utf-8' standalone='yes'?<LDeviceSettings>";
    
var xml = "
<LN identNodo='" + choosenId + "'>";

//...

xml_ajustes = xml_ajustes + xml + "
</LN></LDeviceSettings>";

//...
2. Envio el string como parámetro de SOAP con PHP:

Código PHP:
$xmlAjustes $_POST['xml_ajustes'];

//...

$Ok $client->call(
                
'setAjustes',
                array(
'xmlAjustes' => $xmlAjustes), 
                
"uri:$server_url/$server_script",
                
"uri:$server_url/$server_script#setAjustes"
); 
3. Recojo el string y genero el fichero XML con PHP:

Código PHP:
function setAjustes ($xmlAjustes)
{
//...       
file_put_contents($path$xmlAjustes);
//...

Al principio en el servidor, creaba un objeto DOM de PHP y cargaba el string con la funcion loadXML() pero al no estar correctamente formateado no lo reconocía como XML.

Mi pregunta es: ¿Cómo tengo que generar ese string a mano con javascript para que al servidor de SOAP le llegue intacto?

Gracias de antemano y perdón si este no es el lugar correcto para esta cuestión