Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/10/2006, 11:18
nade
 
Fecha de Ingreso: octubre-2006
Mensajes: 6
Antigüedad: 17 años, 6 meses
Puntos: 0
Pregunta Cosas raras con flash y xml

Hola! Es mi primer mensaje y me alegro mucho de que existan cosas como éstas.

Le he dado muchas vueltas y no tengo ni idea de lo que pasa, así que me he decidido a preguntar (aunque por cierto no me gusta, prefiero solucionarme mis problemas...)

Al grano. Estoy haciendo un Flash que lee de un XML generado con PHP (trabalenguas...) para rellenar un ComboBox. El caso es que cuando lanzo el Flash ¡a veces funciona y otras no funciona!!! Y esto trabajando localmente (es decir, el Flash en mi ordenador y el XML en el Servidor) porque cuando subo el Flash al Servidor no va ni para atrás... la verdad es que es muy raro y por eso me he decidido a preguntar.

Este es el archivo php que genera el XML, muestra por pantalla pero también graba un fichero; el flash lee del fichero (también he probado de la otra forma y nada...):

(**** Lo siento no me deja meter los enlaces (cuando haga 30 posts... ) ****)

(Hay que poner lo de ver código fuente para ver el XML...)

El flash se puede ver aquí (pero no funciona, eh..)
(**** Lo siento no me deja meter los enlaces (cuando haga 30 posts... ) ****)

Por último adjunto el código "caliente", donde está el mehollo del asunto...

Código:
XML.prototype.ignoreWhite=true;
// objeto XML que recibe el listado de usuarios
Poblaciones=new XML();
// No mostramos el combo hasta que no se carguen los datos...
Combo.visible = false ;
// Al cargarse los datos...
Poblaciones.onLoad=function(exito){
	if(exito){
		var raiz=this.firstChild;
		var hijos=this.firstChild.childNodes.length;
		var provincia = "undefined" ;
//		Combo.addItem ({data:0,label:"Población:"}) ;
		for(var n=0;n<hijos;n++){
			// Esto es para indicar las provincias
			if (provincia != raiz.childNodes[n].attributes.Provincia) {
				Combo.addItem 
					({data:raiz.childNodes[n].attributes.Provincia,
					label:"en "+raiz.childNodes[n].attributes.Provincia+":"}) ;				
				provincia = raiz.childNodes[n].attributes.Provincia ;
			}
			// Rellenamos el ComboBox
			Combo.addItem ({data:n,
				label:raiz.childNodes[n].attributes.Nombre}) ;
		} // fin For

	// Crear un objeto detector.
	var cbListener:Object = new Object();

	// Asignar una función al objeto detector.
	cbListener.change = function(event_obj:Object) {
		Cartel.gotoAndPlay(1) ;
		Cartel.gotoAndPlay(2) ;
		LabelP.text = event_obj.target.selectedItem.label ;
		Cartel.LabelP.text = event_obj.target.selectedItem.label ;
		var id = event_obj.target.selectedItem.data ; 
		trace("id: "+Cartel.LabelP.text);
		unloadMovie("_root.peliculas");
		unloadMovie("_root.peliculas2");
		loadMovie("almenara.swf", "_root.peliculas");
		// Posicionamos los mapas
		_root.menu.Xpos = parseInt(raiz.childNodes[id].attributes.Mx) ;
		_root.menu.Ypos = parseInt(raiz.childNodes[id].attributes.My) ;
		_root.cuadro.Xpos = parseInt(raiz.childNodes[id].attributes.Cx) ;
		_root.cuadro.Ypos = parseInt(raiz.childNodes[id].attributes.Cy) ;
	};
	// Añadir detector.
	Combo.addEventListener("change", cbListener);
	// Una vez añadidos los datos, mostramos el combo
	Combo.visible = true ;
	} // fin If
	else { parse ("Error al cargar los datos") ; }
} // fin onLoad


// acceso a la base de datos para obtener un listado de poblaciones
// Poblaciones.load("URL DE PEGA CENSURADA") ;
Poblaciones.load(""URL DE PEGA CENSURADA") ;
Muchas gracias por su ayuda, seguramente será una tontería pero yo ya no sé por donde tirar.

Un cordial saludo.