Comunidad de diseño web y desarrollo en internet online

URGENTE !!! Problema con arrays para una galeria

Citar            
MensajeEscrito el 15 Abr 2009 01:08 pm
Hola a todos, tengo una duda con un error que tengo en una galeria dinamica.. a traves de un sistema en php y una db en msyql el usuario genera categorias y agrega imagenes a esas categorias... con usuario me refiero al administrador...

Con estas lineas de codigo cargo todas las fotos en los arrays

Código :

var imagM:XML = new XML();
imagM.ignoreWhite = true;
info.text = "prueba";
imagM.load("photosarquitectura.php?timer="+new Date().getTime());
//imagM.load("prueba.xml");
imagM.onLoad = function() {
   var CM = imagM.firstChild.childNodes;
   info.text = imagM.firstChild.childNodes.length;
   var titulos:String;
   var descripcion:String;
   var carpeta:String;
   var nodos:String;

   for (var i = 0; i<CM.length; i++) {
      titulos = CM[i].attributes.titulo;
      carpeta = CM[i].attributes.directorio;
      descripcion = CM[i].attributes.descripcion;
      nodos = CM[i].childNodes;
      var galeria:Array = new Array();
      for (var j = 0; j<nodos.length; j++) {
         verfotos.text=o.jpg;
         var o:Object = new Object();
         o.jpg = nodos[i].attributes.jpg;
         o.descripcion = nodos[i].attributes.descripcion;
         o.titulo = nodos[i].attributes.titulo;
         verfotos.text=this.o.jpg+"\n";
         verfotos.text=imagM.firstChild.childNodes[i].childNodes[j].attributes.jpg;
         galeria.push(o);
         delete o;
      }
      categorias.push(titulos);
      carpetas.push(carpeta);
      descripciones.push(descripciones);
      fotos.push(galeria);
   }
// pasa al siguiente frame
play();
};


con estas lineas de codigo cargo los titulos

Código :

function presionado() {

   cargarImagenes(this.can);
}
function cargartitulos() {
   for (var i = 0; i<categorias.length; i++) {
      var t:MovieClip = tit.attachMovie("titulosAr", "titulosAr"+i, tit.getNextHighestDepth());
      t.titulos.text = categorias[i];
      t._x = (90*i);
      t.can = i;
      t.onRollOver = sobre;
      t.onRollOut = fuera;
      t.onRelease = presionado;
   }
}
cargartitulos();


Esta es la funcion que carga las imagenes en miniatura

Código :

function cargarImagenes(pos:Number) {
   var cantidad = fotos[pos].length;
   this.createEmptyMovieClip("arq2", this.getNextHighestDepth());
   arq2._x=-3.1;
   arq2._y=-413.4;
   for (var j = 0; j<cantidad; j++) {
      var mc:MovieClip = arq2.attachMovie("imagen", "imagen"+j, arq2.getNextHighestDepth());
      mc.laImagen = carpetas[pos]+"/thmb_"+fotos[pos][j].jpg;
      verfotos.text =mc.laImagen+"\n";
      mc.laImagenG = carpetas[pos]+"/"+fotos[pos][j].jpg;;
      mc.contenido = fotos[pos][j].descripcion;
      mc.onRollOver = sobre;
      mc.onRollOut = fuera;
      mc.onPress = ver;
      mc._alpha = 60;
      mc._y = (82*j);
   }
}

Este xml me genera el php desde la base de datos

Código :

<list>
<images directorio="arquitectura/alvarez" titulo="Alvarez" descripcion="Alvarez">
<imageNode jpg="arq_alvarez_1.jpg" titulo="Alvarez" fecha="2009-04-15 04:58:59" descripcion="Alvarez"/>
<imageNode jpg="arq_alvarez_2.jpg" titulo="Alvarez" fecha="2009-04-15 04:59:20" descripcion="Alvarez"/>
</images>
<images directorio="arquitectura/donoso" titulo="Donoso" descripcion="Donoso">
<imageNode jpg="arq_donoso_1.jpg" titulo="Donoso" fecha="2009-04-15 05:00:39" descripcion="Donoso"/>
<imageNode jpg="arq_donoso_2.jpg" titulo="Donoso" fecha="2009-04-15 05:00:59" descripcion="Donoso"/>
<imageNode jpg="arq_chorreras_2.jpg" titulo="Donoso" fecha="2009-04-15 05:39:12" descripcion="donoso"/>
</images>
<images directorio="arquitectura/chorreras" titulo="Dos Chorreras" descripcion="Dos chorreras">
<imageNode jpg="arq_chorreras_1.jpg" titulo="Dos Chorreras" fecha="2009-04-15 05:02:22" descripcion="Chorreras"/>
<imageNode jpg="arq_chorreras_2.jpg" titulo="Dos Chorreras" fecha="2009-04-15 05:02:34" descripcion="Chorreras"/>
</images>
</list>


El error que me sale:

En esta parte de codigo fotos[pos][j].jpg solo me saca la ultima foto de cada categoria ejemplo "arq_chorreras_2.jpg", ¿Como me puedo move en el array?

Por Sochmal

53 de clabLevel



 

cuenca

firefox
Citar            
MensajeEscrito el 17 Abr 2009 09:30 pm
hola a todos... ya encontre la solución al problema... me he confundido al momento de cargar la información en los arrays.. solo de debe cambiar unas i por unas j

Código :

for (var i = 0; i<CM.length; i++) {
      titulos = CM[i].attributes.titulo;
      carpeta = CM[i].attributes.directorio;
      descripcion = CM[i].attributes.descripcion;
      nodos = CM[i].childNodes;
      var galeria:Array = new Array();
      for (var j = 0; j<nodos.length; j++) {
         verfotos.text=o.jpg;
         var o:Object = new Object();
         o.jpg = nodos[j].attributes.jpg;
         o.descripcion = nodos[j].attributes.descripcion;
         o.titulo = nodos[j].attributes.titulo;
         galeria.push(o);
         delete o;
      }
      categorias.push(titulos);
      carpetas.push(carpeta);
      descripciones.push(descripciones);
      fotos.push(galeria);
   }

Por Sochmal

53 de clabLevel



 

cuenca

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.