Les voy a explicar mi caso, soy nuevo en flash y quería hacer un inicio de sesión en flash con LoadVars. Los php los tengo hechos, devuelven mensaje=true o mensaje=false si coinciden o no el nombre con la contraseña. También he creado una variable que se llama intentos que defino al primer fotograma con el valor 0 i voy sumando 1 cada vez que intentas entrar hasta llegar a 5 que te envía al fotograma 3. I con la ayuda del php crea una cookie porque si refrescas la página no puedas volver a iniciar sesión hasta que expire la cookie (30 segundos)
Pero cuando cargo la cookie en un php que devuelve tiempo=true o tiempo=false según exista la cookie o no, no la carga igual que en la de inicio de sesión. Las variables se quedan con undefined. Aquí les dejo el código a ver si alguien encuentra el problema.
Fotograma 1:
Código :
var intentos:Number = 0 var nombre_txt:String = "" var pass_txt:String = "" var mensaje_txt:String = ""
Fotograma 2:
Código :
function enviarForm() {
var envio_lv:LoadVars = new LoadVars();
var recibir_lv:LoadVars = new LoadVars();
trace ("enviarform")
//El nombre de la variable que enviara los datos del formulario
//es "envio_lv", a esa variable le voy asignando uno por uno los
//valores que le llegaran al formulario, y con el mismo nombre que
//asigno aqui sera con el que los Scripts trataran los datos del
//formulario
envio_lv.nom = nombre_txt.text;
envio_lv.pass = pass_txt.text;
//Uso el metodo "sendAndLoad" para enviar el formulario y recibir
//la respuesta del servidor, el metodo tiene tres parametros
//el primero es la URL del script que tratara el formulario, en este
//caso lo llame " http://www.pep-jo.es/programa.php ", el segundo es el objeto que cargara la
//respuesta del servidor y el tercero el metodo de envio del formulario
//que puede ser, como en HTML, GET o POST
envio_lv.sendAndLoad("http://www.pep-jo.es/programa.php", recibir_lv, "GET");
//Función que procesa los datos recibidos del servidor
recibir_lv.onLoad = function(exito) {
if (exito) {
//traza algunas de la variables i informa de que ha funcionado.
trace ("recibir_lv exito")
trace ("mensaje:"+mensaje)
trace ("intentos:"+intentos)
trace ("nombre:"+nombre_txt)
trace ("contrasseña:"+pass_txt)
intentos = intentos+1
//si mensaje es true muéstralo en el panel salida y vete al fotograma 2
if (mensaje == "true"){
trace ("accedir: true")
gotoAndPlay(2)
}
//si mensaje es false muestra-lo en el panel salida y muestra un texto dinámico.
if (mensaje == "false"){
trace ("acceder: false")
mensaje_txt = "El nombre de usuario no coincide"
} else {
//si el valor no es ni true ni false muéstralo en el panel salida y muestra en el texto dinámica Error
trace ("acceder: error")
mensaje_txt = "Error en el script"
}
} else {
//si no se carga con éxito infórmalo
trace ("error")
//Muestra un mensaje de error
mensaje_txt = "Error a l'escript";
}
//si intentos llega a 5 vete al fotograma 3
if (intentos == 5){
gotoAndPlay(3)
}
//prueba en el php si cookie existe
var archivoPHP:LoadVars = new LoadVars();
archivoPHP.load("http://pep-jo.es/programa_cookie_llegir.php");
archivoPHP.onLoad = function (exito:Boolean){
if (exito){
//si existe vete al fotograma 3
if(tiempo == true){
gotoAndStop(3)
}
} else{
trace("error al cargar el script php");
mensaje_txt = "Hay un error en el lector de cookies "
}
}
trace ("cookie:"+tiempo)
trace ("______________")
};
}
stop();
En el fotograma 2 se encuentran los textos de introducción con los nombres correspondientes i un botón con ese código:
Código :
on (release) {
//Coloca el mensaje de carga en el campo de texto "mensaje_txt"
mensaje_txt = "Cargando...";
//Llama a la función que envia el formulario
enviarForm();
}
PD: Gracias a Freddie porque he utilizado su tutorial
PDD: Las direcciones son reales por si quereis comprovar lo que digo o si ay algun problema allí.
