Foros del Web » Programación para mayores de 30 ;) » Programación General »

usar xml en html

Estas en el tema de usar xml en html en el foro de Programación General en Foros del Web. Buenas, tengo un tema entre manos y, a pesar de estar buscando durante un dia entero, no consigo solucionarlo. A ver si alguien me podría ...
  #1 (permalink)  
Antiguo 05/12/2009, 06:03
 
Fecha de Ingreso: septiembre-2009
Mensajes: 4
Antigüedad: 14 años, 7 meses
Puntos: 0
usar xml en html

Buenas,

tengo un tema entre manos y, a pesar de estar buscando durante un dia entero, no consigo solucionarlo. A ver si alguien me podría echar una mano.

Primero deciros, que tengo entiendo algo los lenguajes de programacion (un poco), pero yo mismo no escribo código, por lo que estoy bastante limitado en este sentido.

Bueno, se trata de lo siguiente. Tengo una página que me han pasado (un aspx) que me devuelve un XML. Esta página se actualiza diariamente (es un parte de nieve). Yo quiero utilizar este XML para incorporarlo en una página web html, de modo que la web en html siempre esté actualizada. (La página podría tambien estar en php, ya que hay un servidor php (mysql tambien, etc.).)

Se necesita un parser, etc para ello. Eso ya lo he averiguado. Pero no consigo ponerlo en marcha. Necesito alguien que me eche una mano. Si es necesario, podría pagar una pequeña cantidad por ello.

Ya me direis Gracias
  #2 (permalink)  
Antiguo 06/12/2009, 09:28
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 2 meses
Puntos: 90
Respuesta: usar xml en html

Si lo haces en php debes efectivamente usar un parser, si lo haces en html con AJAX te sobra...

Saludos
__________________
Esteban Quintana
  #3 (permalink)  
Antiguo 07/12/2009, 09:34
 
Fecha de Ingreso: septiembre-2009
Mensajes: 4
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: usar xml en html

Buenas de nuevo,

no consigo alcanzar mi objetivo. He probado varias cosas, una de ellas asi:

<html>
<head>
<title>mi pagina
</title>

</head>
<body>
<xml id="2" src="1.xml"></xml>

<table datasrc="#2" width="640" border="1px">
<thead align="left">Tabla de alumnos
<th>Nombre</th>
<th>Apellidos</th>
<th>Edad</th>
</thead>
<tr>
<td><span datafld="body"></span></td>
<td><span datafld="informacion_general"></span></td>
<td><span datafld="estacion"></span></td>
</tr>
</table>


</body>
</html>

y no me funciona. Tb he probado asi:

<script language="JavaScript" for="window" event="onload">
xmlDoc = new ActiveXObject("Microsoft.XMLDOM")
xmlDoc.async="true"
xmlDoc.load("tu archivo xml")
raiz = xmlDoc.documentElement

textoXml.innerText = xmlDoc.xml
</script>

y esto en alguna parte de tu documento
<div id="textXml"></div>


tampoco me funciona.

Rogaría alguien me ayudara con una solucion sencilla, para alguien que tan apenas programa.

Un saludo
  #4 (permalink)  
Antiguo 25/12/2009, 09:38
Avatar de AhmedRugama  
Fecha de Ingreso: diciembre-2008
Ubicación: Nicaragua
Mensajes: 160
Antigüedad: 15 años, 4 meses
Puntos: 6
Respuesta: usar xml en html

Ps yo lo hago de manera distinta, pero me parece que lo que te falta es un
xmlDoc.onreadystatechage = function() { textoXml.innerText = xmlDoc.xml; }
o algo asi, porque lo estas usando de manera asincrona (xmlDoc.async="true")
bueno, igual te dejo un ejemplo de la manera en que yo lo hago:

Igual tu ejemplo que tienes aunque lo hicieras funcionar solo seria valido para windows, te dejo un ejemplo de como lo hago yo:

Código:
function getXML(){
	if(window.ActiveXObject){/// en caso de que sea IE
		var xmlObject = new ActiveXObject("Microsoft.XMLDOM");
		xmlObject.async="false";
		xmlObject.onreadystatechange = function(){
			if (xmlObject.readyState == 4) 
			{
				xmlObj=xmlObject.documentElement;
					for(var x=0; x<nodesQuan; x++){
						xmltag1 = myxml.childNodes(x).getElementsByTagName("xmltag1");//esto lo cambias por el nombre de tus tags;
                                 // Aqui haces lo que quieras con el contenido de tu etiqueta
					}
			}
		}
		xmlObject.load("tuxml.xml");
	//////
	/////
	}else if(window.XMLHttpRequest){//para FF y otros
		var xmlObject = new XMLHttpRequest();
		xmlObject.onreadystatechange = function(){
			if(xmlObject.readyState == 4 && xmlObject.status == 200){
				var response = xmlObject.responseXML.documentElement;
				nodesQuan = response.getElementsByTagName('duracion').length;
				for(var x=0; x<nodesQuan; x++){
					var xmlag1 = response.getElementsByTagName('xmltag1')[x].firstChild.data;
                                  //Aqui haces lo que quieras con tu xmltag1
				}
			}
		}
		xmlObject.open("GET","tuxml.xml",true);
		xmlObject.send(null);
	}
};
En la parte donde dice //Aqui haces lo que quieras <- puedes mandar a llamar una funcion para que te coloque los datos en tu pagina
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 22:21.