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

Ayuda con Flash y PHP

Estas en el tema de Ayuda con Flash y PHP en el foro de Flash y Actionscript en Foros del Web. El objetivo es conectar Flash con PHP y MySQL, el problema es que cuando pasa alguna variable de Flash a PHP y la muestro en ...
  #1 (permalink)  
Antiguo 12/07/2006, 17:21
 
Fecha de Ingreso: julio-2006
Mensajes: 3
Antigüedad: 11 años, 5 meses
Puntos: 0
Ayuda con Flash y PHP

El objetivo es conectar Flash con PHP y MySQL, el problema es que cuando pasa alguna variable de Flash a PHP y la muestro en pantalla sale "undefined".

Hice un codigo muy simple pero ni asi corre

Flash 8:
send_btn.onRelease = function(){
lv = new LoadVars();
lv.elTexto =elTexto.text;
lv.jonas = "jonas";
lv.send("send.php",lv,"POST")
}
PHP:
<?php
$nom = $_POST['elTexto'];
$jonas1 = $_POST['jonas'];
$myvar = "Hola.";
echo $myvar;
echo $nom;
echo $jonas1;
?>
}
Y el resultado que me manda es : Hola.undefinedjonas

Alguien tengra alguna solucion de antemano Gracias!!!
  #2 (permalink)  
Antiguo 13/07/2006, 04:45
Avatar de kappra  
Fecha de Ingreso: diciembre-2004
Mensajes: 125
Antigüedad: 13 años
Puntos: 0
si que llega la variable, de hecho la variable 'jonas' llega, la que no llega es 'elTexto'. Comprueba qué es lo que tiene esa variable, porke seguramente está ahí el problema.

Otra cosa, porqué duplicas las variables en php? quiero decir, en vez de hacer

$jonas1=$_POST['jonas']
echo $jonas1;

porqué no plantas directamente

echo $_POST['jonas'] o mejor aún echo $jonas;
__________________
oO <--- H. Kappra ---> oO
  #3 (permalink)  
Antiguo 13/07/2006, 05:05
 
Fecha de Ingreso: abril-2005
Mensajes: 372
Antigüedad: 12 años, 7 meses
Puntos: 0
Cita:
Iniciado por kappra
Otra cosa, porqué duplicas las variables en php? quiero decir, en vez de hacer

$jonas1=$_POST['jonas']
echo $jonas1;

porqué no plantas directamente

echo $_POST['jonas'] o mejor aún echo $jonas;
Hola Kappra, hago una observacion a lo que dijiste.
siempre es mejor utilizar arrays superglobales
Código PHP:
$_POST[] y $_GET[] 
y no variables tipo
Código PHP:
$Mivariable
Ya que esta ultima es absolutamente vulnerable de ser modificada por cualquier persona ajena. Ena cambio los arrays superglobales funcionan solo bajos sus parametros (info enviada por POST si el array es POST o GET si el array es GET) y pudiendoles inclusive agregar mas seguridad adicional a traves de php.
Es una simple observacion de seguridad, que no se tome como un tiron de orejas.
Siempre es bueno darnos una mano entre todos para hacer la web mas segura
Suerte!!
  #4 (permalink)  
Antiguo 13/07/2006, 05:16
Avatar de kappra  
Fecha de Ingreso: diciembre-2004
Mensajes: 125
Antigüedad: 13 años
Puntos: 0
tomo nota otraverix
aunque nunca tuve problemas de seguridad

de todas formas, sigue siendo válido lo que decía de evitar una asignación:

Código PHP:
echo $_POST['laVar'
en vez de

Código PHP:
$local=$_POST['laVar'];
echo 
$local
__________________
oO <--- H. Kappra ---> oO
  #5 (permalink)  
Antiguo 13/07/2006, 16:07
 
Fecha de Ingreso: abril-2005
Mensajes: 372
Antigüedad: 12 años, 7 meses
Puntos: 0
Sipi sipi, no sea cosa que se nos acalambre el dedo
ahorrarse aunque sea unos caracteres es muy valioso cuando escribes muchas lineas de codigo

Suerte!!
  #6 (permalink)  
Antiguo 14/07/2006, 20:05
 
Fecha de Ingreso: julio-2006
Mensajes: 1
Antigüedad: 11 años, 4 meses
Puntos: 0
Prueba hacer esto!

send_btn.onRelease = function(){
lv = new LoadVars();
vl = new LoadVars();
lv.elTexto =elTexto.text;
lv.jonas = "jonas";
lv.send("send.php",vl,"POST")
}




Se lo aseguro que sirve!!!!

o si algo lo cambias por: lv.sendAndLoad("send.php",vl,"POST")
  #7 (permalink)  
Antiguo 14/07/2006, 21:04
 
Fecha de Ingreso: enero-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 299
Antigüedad: 11 años, 11 meses
Puntos: 5
Buenas, seguro que el problema no está en el script php sino en el swf. Hacé esta prueba:

Código:
send_btn.onRelease = function(){
    lv = new LoadVars();
    lv.elTexto =elTexto.text;
    trace("valor de elTexto.text="+elTexto.text);
    lv.jonas = "jonas";
    lv.send("send.php",lv,"POST")
}
El trace dentro de Flash (del programa) te va a dar "undefined". (El swf está mandando "undefined" a php; en php no existe "undefined" como tipo de dato).

Con respecto a las globales, aunque no son inseguras de por sí, es más fácil meter la pata usándolas que usando los arrays $_POST, $_GET, etc. Además, en muchas configuraciones (con globals "off"),
Código PHP:
$_POST['variable'
no es lo mismo que
$variable

La segunda opción simplemente no funciona.

Cita:
de todas formas, sigue siendo válido lo que decía de evitar una asignación:

Código PHP:
echo $_POST['laVar']

en vez de

Código PHP:
$local=$_POST['laVar'];
echo $local;
Para mí, es al revés. Es mejor usar una variable a manera de "referencia" (no es una referencia real, pero a falta de mejor término) que usar el valor directamente, porque es más flexible, ordenado y la diferencia de rendimiento ni la vas a notar. Pero, si usás el valor de esa variable en varios lados (pongamos, 10 veces), y por x motivo el nombre de la variable cambia, vas a tener que cambiar el código a mano en diez lugares distintos. No es tan difícil que se te escape alguno de esos cambios, y te lleve algún tiempo encontrar el error (es decir, es más propenso a "bugs"). De la otra manera, el valor se asigna a una "referencia" (que insisto, no es una verdadera referencia) en un sólo lugar y es mucho más fácil de controlar, porque está centralizado.

Suerte
Califa
  #8 (permalink)  
Antiguo 14/07/2006, 21:32
 
Fecha de Ingreso: abril-2005
Mensajes: 372
Antigüedad: 12 años, 7 meses
Puntos: 0
Excelente observacion cali !!
  #9 (permalink)  
Antiguo 15/07/2006, 12:39
 
Fecha de Ingreso: julio-2006
Ubicación: Mendoza - Argentina
Mensajes: 7
Antigüedad: 11 años, 4 meses
Puntos: 0
Hola lee por favor el tema nuevo que postié hace un rato como FLASH+PHP+TXT(con loadVariablesNum), espero que te sirva, hasta la pròxima...
  #10 (permalink)  
Antiguo 16/07/2006, 13:25
Avatar de kappra  
Fecha de Ingreso: diciembre-2004
Mensajes: 125
Antigüedad: 13 años
Puntos: 0
Cita:
Además, en muchas configuraciones (con globals "off"),
Código PHP:
$_POST['variable'
no es lo mismo que
$variable

La segunda opción simplemente no funciona.
En eso tienes toda la razón, lo que pasa es que en mi caso siempre trabajo con servidores en los que puedo modificar esos parámetros, y supongo que la rutina a veces me hace no pensar en global (nunca mejor dicho ), en otros casos que no son el mio.

También tomo nota de tu observación con respecto a usar una 'referencia'. Siempre enriquece tener varios puntos de vista

saludos
__________________
oO <--- H. Kappra ---> oO
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:05.