Código PHP:
<?xml version="1.0" encoding="utf-8"?>
<Integracion Fecha="16/06/2008 10:11:43" FechaInicial="01/01/2008" FechaFinal="16/06/2008" DescargaAnulados="True" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../xml/integracion.xsd">
<Alumnos Accion="Nuevos">
<Alumno NIF="00000000B" FechaAlta="18/06/2008" Nombre="Nuevo usuario" Apellidos="Nuevo usuario" Codigo="usuario" Password="f8032d5cae3de20fcec887f395ec9a6a" Titulacion="" FechaNacimiento="" Direccion="" Localidad="" Provincia="" CodigoPostal="0" Pais="ESPAÑA" Nacionalidad="ESPAÑA" Telefono="963258741" Fax="" Movil="60000000" CorreoElectronico="[email protected]" Habilitado="Sí" />
</Alumnos>
<Alumnos Accion="Modificado">
<Alumno NIF="11111111R" FechaAlta="20/06/2007" FechaModificacion="18/06/2008" Nombre="Alumno1" Apellidos="Pruebas Adapting" Codigo="adaptingalumno1" Password="009371e6669d3c2485fb4dd08bfba5af" Titulacion="" FechaNacimiento="" Direccion="valencia" Localidad="valencia" Provincia="Valencia" CodigoPostal="46000" Pais="ESPAÑA" Nacionalidad="ESPAÑA" Telefono="9123121" Fax="789653222" Movil="912311" CorreoElectronico="[email protected]" Habilitado="Sí" />
<Alumno NIF="111111C" FechaAlta="30/11/1999" Nombre="AZULEJERA TÉCNICA" Apellidos=" S.A. (AZTECA)" Codigo="A12007472" Password="870158e5635fddf4ac29085f2351648d" Titulacion="" FechaNacimiento="30/11/1999" Direccion="CTRA. xxxxxxxx, KM. 19'7" Localidad="CASTELLÓN" Provincia="" CodigoPostal="12110" Pais="ESPAÑA" Nacionalidad="ESPAÑA" Telefono="xxxxxxx" Fax="" Movil="" CorreoElectronico="[email protected]" Habilitado="Sí" />
</Alumnos>
<Alumnos Accion="Borrados">
<Alumno NIF="A22222222" Nombre="aaaaaaaa, S.A. " Apellidos="" FechaBorrado="18/06/2008" />
</Alumnos>
<Cursos Accion="NuevosModificado">
</Curso>
</Cursos>
<Matriculas Accion="matriculas">
</Matriculas>
</Integracion>
Código PHP:
'Ahora leemos el xml creado en el paso anterior
set objXml = server.CreateObject("MSXML2.DOMDocument")
objxml.async = false
' Aqui cargamos el archivo en el objeto
objxml.load(server.MapPath("./tmp/"&Request.ServerVariables("Remote_Addr")&".xml"))
' Gestion de errores
if objxml.parseError.errorCode <> 0 Then
response.Write("Error de Lectura (Por favor, ponerse en contacto con el webmaster).<br />FilePos: " & objxml.parseError.filepos & "<br /> Línea: " & objxml.parseError.Line & "<br /> Causa: " & objxml.parseError.reason & "<br /> Ocurrió en: " & objxml.parseError.srcText & "<br /> Archivo: " & objxml.parseError.URL)
response.End()
end if
' Averiguamos cuantas noticias tenemos
numNoticias = objxml.selectSingleNode("Integracion").childNodes.length
response.write("<br><br>AQUI: " & numnoticias)
Pues bien, al trabajar con este fichero, si pongo simplemente el nodo Integración, si que me devuelve el número de subnodos que tengo (Alumnos, Cursos y Matricula), e incluso si pongo Integración\Alumnos también va bien, pero como tendría que hacerlo para acceder al nodo de alumnos especificando la acción?? Ya que puedo tener tres acciones diferentes (Nuevos, Modificados y Borrados), pero si pongo "numNoticias = objxml.selectSingleNode("Integracion\Alumnos Accion=Nuevos").childNodes.length" me da el siguiente error:
Cita:
Supongo que habrá que especificarle de alguna manera que solo quiero los que tengan ese atributo acción, pero no se como hacerlo. Muchas gracias por adelantado a tod@s, salu2 msxml3.dll error '80004005'
Se esperaba el testigo 'eof' y se encontró 'NAME'. /Integracion/Alumnos -->Accion<--='Nuevos'
/gestion/prueba_xml2.asp, línea 18
Se esperaba el testigo 'eof' y se encontró 'NAME'. /Integracion/Alumnos -->Accion<--='Nuevos'
/gestion/prueba_xml2.asp, línea 18
