Foros del Web » Creando para Internet » Flash y Actionscript »

Carga de información de archivos con un FOR AS2

Estas en el tema de Carga de información de archivos con un FOR AS2 en el foro de Flash y Actionscript en Foros del Web. Hola de nuevo gentes!!! Tengo una duda que me está quebrando la cabeza, más bien, no sé donde estoy fallando, pero no funciona y por ...
  #1 (permalink)  
Antiguo 17/06/2009, 01:51
 
Fecha de Ingreso: agosto-2007
Mensajes: 32
Antigüedad: 16 años, 8 meses
Puntos: 1
Carga de información de archivos con un FOR AS2

Hola de nuevo gentes!!! Tengo una duda que me está quebrando la cabeza, más bien, no sé donde estoy fallando, pero no funciona y por lógica debería de funcionar. El código es el siguiente:

Código actionscript:
Ver original
  1. // Creo un contador
  2. var contar:Number=0;
  3. // Cargo dicho archivo. Este archivo es un archivo PHP que lee los archivos TXT de un directorio. Éstos tienen unas variables que el PHP las pasa en plan, archivo 1: &I1=****&T2=******&; Archivo 2: &I2=******&T2=*****&; Archivo 3: Etc...
  4. var productos:LoadVars=new LoadVars();
  5. productos.load("productos.php");
  6. productos.onLoad=function(si){if(si){
  7. // Cuento el número de archivos existentes
  8.     var U:Number=productos.num;
  9. // Creo un Movie Clip para representar los datos en una tabla ordenada
  10.     var aux:MovieClip;
  11. // Carga de datos por individual
  12.     for(var i:Number=0;i<U;i++){
  13. // Como i me cuenta desde 0, sigo la fila del contador que me empieza en 1
  14.         contar++;
  15.         var R:Number=Math.floor(i/3);
  16. // Creo el MovieClip desde otro ya existente
  17.         aux=mn.uno.duplicateMovieClip("uno"+i,i);
  18. // Divido en 3 columnas la información, ordenadas de izquierda a derecha y de arriba a abajo
  19.         aux._x=(i*130)-(3*130*R);
  20.         aux._y=160*R
  21. // Cargo los datos en su correspondiente lugar
  22.         aux.T.text=productos._root["T"+contar];
  23.         aux.I.text=productos._root["I"+contar];
  24.         aux.P.text=productos._root["P"+contar];
  25.     };
  26. };};

El código a pelo sería el siguiente:

Código actionscript:
Ver original
  1. var contar:Number=0;
  2. var productos:LoadVars=new LoadVars();
  3. productos.load("productos.php");
  4. productos.onLoad=function(si){if(si){
  5.     var U:Number=productos.num;
  6.     var aux:MovieClip;
  7.     for(var i:Number=0;i<U;i++){
  8.         contar++;
  9.         var R:Number=Math.floor(i/3);
  10.         aux=mn.uno.duplicateMovieClip("uno"+i,i);
  11.         aux._x=(i*130)-(3*130*R);
  12.         aux._y=160*R
  13.         aux.T.text=productos._root["T"+contar];
  14.         aux.I.text=productos._root["I"+contar];
  15.         aux.P.text=productos._root["P"+contar];
  16.     };
  17. };};

La verdad, no entiendo donde fallo, el PHP da como resultado lo deseado, por tanto sé que el PHP no falla. Que liada, a ver si me podéis ayudar, muchas gracias gentes ;).

P.D.: La cosa es que sé que falla con el _root, el archivo PHP lee la información a la perfección, y si le cambio por ejemplo a aux.T.text=productos._root["T"+contar]; por aux.T.text=productos.T2; funciona perfectamente, solo que las celdas de la tabla salen todas con ese valor, y yo quería leer los diferentes valores existentes en el código reultante del archivo PHP.

Consiguiera ya hace tiempo, con el mismo proceso del FOR, hacerse mover conjuntamente varios MovieClips a la vez sin necesidad de ir nombrando uno a uno, lo hice de la siguiente manera:

Código actionscript:
Ver original
  1. for(var i:Number=1;i<=4;i++)
  2. {
  3.     _root["bola"+i]._x=2;
  4. };

Cómo veis, estoy moviendo 4 MovieClips simultáneamente, a 2 píxels por fotograma de izquierda a derecha. Cómo podéis observar los 4 MovieClips se llamaban bola1, bola2, bola3 y bola4. Con el FOR y el _ROOT hago referencia a éstos simultáneamente sin nombrarlos a pelo en el código AS. Usando este mismo sistema, intenté hacer una lectura de información para hacer las tablas de información leyendo un directorio con PHP donde cada archivo tiene su información. Si ejecuto el PHP sale tal cual lo que quiero, sin embargo a la hora de leer en el SWF, mira tu, sale UNDEFINED. ¿Por qué puede suceder esto? Si cambio el _ROOT por algo concreto como T2, me sale el parámetro T de la segunda celda. Que liada, a ver si me podéis ayudar, muchas gracias gentes! ;)

Última edición por miglug; 17/06/2009 a las 02:16 Razón: REsaltador de código ActionScript
  #2 (permalink)  
Antiguo 17/06/2009, 17:56
Avatar de WaR-05  
Fecha de Ingreso: abril-2008
Mensajes: 35
Antigüedad: 16 años
Puntos: 1
Respuesta: Carga de información de archivos con un FOR AS2

Si productos es un LoadVars has intentado...

aux.T.text=productos.["T" + contar]; Ó _root.aux.T.text=productos.["T" + contar];
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 20:53.