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

pasar un array de php a flash

Estas en el tema de pasar un array de php a flash en el foro de Flash y Actionscript en Foros del Web. Hola. Ya he leido algun POST en el foro sobre esto pero sigo con mis dudas de si se puede hacer o no y como. ...
  #1 (permalink)  
Antiguo 10/05/2005, 03:50
 
Fecha de Ingreso: abril-2005
Mensajes: 64
Antigüedad: 19 años
Puntos: 0
Exclamación pasar un array de php a flash

Hola.

Ya he leido algun POST en el foro sobre esto pero sigo con mis dudas de si se puede hacer o no y como.

Yo en php tengo un array (ej txtarray[];)
y quiero pasarselo a un array en flash para trabajar con el.

Se puede hacer ? como ?

he leido que se puede hacer usando una funcion en php que te une los campos del array en una variable, pero luego dentro de flash como lo recompongo en un array si no hay esa funcion en flash ?

me podeis ayudar ?

mil gracias.
  #2 (permalink)  
Antiguo 10/05/2005, 04:53
Avatar de Parzival  
Fecha de Ingreso: junio-2004
Ubicación: Vive en el foro
Mensajes: 190
Antigüedad: 19 años, 10 meses
Puntos: 2
Flash puede leer variables desde un archivo de texto externo con la función loadvars (mirate la ayuda que lo explica bastante bien) de la siguiente manera:

var1=2&var2=5&var3=14

Así que cuando hagas el loadvars sobre el archivo de php, el script te tiene que devolver algo así para que puedas ir guardando los valores del array en flash.

Te recomiendo que la primera variable que escribas indique la extensión del array, es decir, si tienes un array con dos elmentos que la primera variable sea: "var0=2" y si son 5 elementos: "var0=5", así sabes cuantos valores vas a tener que guardar.

No sé como explicarlo mejor, pero si buscas por ahí la función loadvars seguro que te ayuda =)
  #3 (permalink)  
Antiguo 10/05/2005, 04:57
Avatar de HIa
HIa
 
Fecha de Ingreso: noviembre-2002
Ubicación: Cartago
Mensajes: 121
Antigüedad: 21 años, 5 meses
Puntos: 0
puedes guardar el array en un objeto XML y enviarselo a flash, creo que quedaria mejor

<array>
<elemento id=0>"...."</elemento>
<elemento id=1>"...."</elemento>
<elemento id=1>"...."</elemento>
</array>
__________________
Siempre hay algo nuevo que aprender
  #4 (permalink)  
Antiguo 10/05/2005, 05:17
 
Fecha de Ingreso: abril-2005
Mensajes: 64
Antigüedad: 19 años
Puntos: 0
gracias.

Creo que lo que comenta Parzival es lo que necesito.

salu2
  #5 (permalink)  
Antiguo 11/05/2005, 02:58
 
Fecha de Ingreso: abril-2005
Mensajes: 64
Antigüedad: 19 años
Puntos: 0
Pregunta

Ahora me falta una cosa.

Con que funcion miro a vre si el texto contiene una & para separar lsa variables y meterlas en el array en flash ?

Hay alguna funcion tipo "explode" en php, pero en flash ?

Salu2.
  #6 (permalink)  
Antiguo 11/05/2005, 03:39
Avatar de Parzival  
Fecha de Ingreso: junio-2004
Ubicación: Vive en el foro
Mensajes: 190
Antigüedad: 19 años, 10 meses
Puntos: 2
al ir separadas de "&" flash te las reconoce como distintas variables sin necesidad de nada más. Aún así sí que puedes dividir una cadena en más cadenas con la función String.split().

Pero recuerda que flash ya lo hace automático con el loadVars, así que no lo necesitas
  #7 (permalink)  
Antiguo 11/05/2005, 05:04
 
Fecha de Ingreso: agosto-2004
Mensajes: 124
Antigüedad: 19 años, 8 meses
Puntos: 0
En mi opinión la solución del XML es un poco más complicada pero más elegante en todo caso :D
__________________
:O
  #8 (permalink)  
Antiguo 12/05/2005, 02:35
 
Fecha de Ingreso: abril-2005
Mensajes: 64
Antigüedad: 19 años
Puntos: 0
Busqueda

La opcion XML no la veo tan complicada, en mas la veo mas facil para mucha cantidad de informacion, y es cierto, es mas elegante, pero para lo que lo necesito ahora me vale de sobra la opcion del array ya que es un simple array con poca informacion.

Entonces con loadvars ya separa las variables segun Parzival, pero no veo como hacerlo y no me sale meterlo a un array.

Podrias poner un trocito de codigo de ejemplo ?

Yo uso algo tal que asi para coger las variables:

var cargador_lv:LoadVars = new LoadVars();
cargador_lv.onLoad = function(exito) {
//Si las variables fueron cargadas con exito
if (exito) {
numvinos = this.numvinos; //Numero de vinos en la BD
error = this.error; //Si se produce error 1 sino 0
txtvino1.text = this.txtvino1;
txtvino2.text = this.txtvino2;
//En caso de que haya un error
} else {
//Mostrar mensaje de error en el campo de texto
txtvino1.text = "Error!! :(";
txtvino2.text = "Error!! :(";
}
};
//Frena la linea de tiempo principal
stop();


Y el PHP donde saco las variables del flash me devuelve esto:

numvinos=4&error=0&txtvino1=vino1&txtvino2=vino2&t xtvino3=vino3&txtvino4=vino4

gracias de nuevo.
  #9 (permalink)  
Antiguo 12/05/2005, 02:52
Avatar de Parzival  
Fecha de Ingreso: junio-2004
Ubicación: Vive en el foro
Mensajes: 190
Antigüedad: 19 años, 10 meses
Puntos: 2
¿Y así no te va? Yo me refería a usarlo así. En teoría tendría que ir, no?
  #10 (permalink)  
Antiguo 12/05/2005, 04:53
 
Fecha de Ingreso: abril-2005
Mensajes: 64
Antigüedad: 19 años
Puntos: 0
Buenas de nuevo.

Asi me va pero tengo que cojer de 1 en 1 variable.
Si pudiera cojer toda la linea como una variable podria hacer un bucle y mirar hasta donde llega el & e ir almacenando en el array.

Segun lo tengo ahora a priori necesito saber cuantas variables hay y como se llaman cada una.

Mira que me estoy comiendo la cabeza para esto y nada, no me sale.
  #11 (permalink)  
Antiguo 12/05/2005, 05:12
Avatar de Parzival  
Fecha de Ingreso: junio-2004
Ubicación: Vive en el foro
Mensajes: 190
Antigüedad: 19 años, 10 meses
Puntos: 2
Puedes probar esto?

Después de coger la variable error mete dentro de un for con incremento de i hasta el numero de vinos que tengas:

txtvino[i] = this["txtvino"+i];

Así en teoría se te va metiendo todos los valores dentro de un array llamado txtvino.

Ah, definelo antes y eso xD

No sé si funcionará del todo, pero puedes probar =)
  #12 (permalink)  
Antiguo 12/05/2005, 05:36
 
Fecha de Ingreso: abril-2005
Mensajes: 64
Antigüedad: 19 años
Puntos: 0
voy a probar

Gracias.
  #13 (permalink)  
Antiguo 12/05/2005, 08:10
 
Fecha de Ingreso: agosto-2004
Mensajes: 124
Antigüedad: 19 años, 8 meses
Puntos: 0
Si son pocas variables, puedes pasarlas como texto normal pero si son muchas es muy preferible que generesa un XML desde PHP.
__________________
:O
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 00:20.