Código ActionScript :
if (correoCorrecto) { form_lv = new LoadVars(); // mete los datos que se van a enviar // NOMBRE form_lv.nombre = nombre_txt.text; // EMAIL form_lv.email = email_txt.text; // CONSULTA form_lv.consulta = consulta_txt.text; // ARCHIVO ADJUNTO form_lv.Filedata = file.name; // se envian los datos form_lv.sendAndLoad("envio.php", form_lv, "POST"); form_lv.onLoad = function() { trace("LLEGÓ"); if (this.estatus == "ok") { respuesta_txt.text = "Su mensaje fue enviado. Muchas gracias."; // borra nombre_txt.text = ""; email_txt.text = ""; comnsulta_txt.text = ""; } else { respuesta_txt.text = "Problemas con el servidor. Intentelo de nuevo"; } }; //ACCIONES DE LOS BOTONES adjuntar_btn.onRelease = subir; enviar_btn.onRelease = enviar; borrar_btn.onRelease = borrar;
De todas formas qquí dejo el código completo por si veis algo más:
Código ActionScript :
//PARA ADJUNTAR UN ARCHIVO import flash.net.FileReference; var fileRef:FileReference = new FileReference(); var nombre_archivo:String; function subir() { // estas 5 lineas limitan los tipos de archivos que pueden subirse a solo pdfs. var allTypes:Array = new Array(); var imageTypes:Object = new Object(); imageTypes.description = "Acrobat (*,pdf)"; imageTypes.extension = "*.pdf"; allTypes.push(imageTypes); var listener:Object = new Object(); listener.onSelect = function(file:FileReference):Void { if (Math.ceil(file.size/1024)>5000) { _root.alertar("El archivo no puede exceder los 5MB"); } else { instx.text = file.name; } }; listener.onComplete = function(file:FileReference):Void { _root.alertar("ENVIO COMPLETADO"); delete fileRef; delete listener; }; listener.onHTTPError = function(file:FileReference, httpError:Number):Void { _root.alertar("Error al enviar archivo. HTTPError: "+httpError); }; listener.onIOError = function(file:FileReference):Void { _root.alertar("Error al enviar archivo - IOError"); }; listener.onSecurityError = function(file:FileReference, errorString:String):Void { _root.alertar("Error al enviar archivo. SecurityError: "+errorString); }; fileRef.addListener(listener); fileRef.browse(allTypes); } function alertar(recibo) { getURL("javascript:alert('"+recibo+"')"); } // PARA ENVIAR LOS DATOS DE LOS CAMPOS enviar = function () { // si se debe enviar algun campo mas como obligatorio hay que añadirle a la siguiente linea if (nombre_txt.length && email_txt.length && consulta_txt.length && leido == true) { correoCorrecto = true; if (email_txt.length == 0) { correoCorrecto = false; /*una direccion de correo es del estilo de: "[email protected]". Lo que comprueba para ver si la direccion es correcta, es si tiene una "@" y un ".". Esto lo hace con la funcion "indexOf" que me da la posicion del caracter buscado indexOf si no encuentra el caracter devuelve "-1" si lo encuentra, devuelve la posicion del caracter dentro de la cadena, en el ejemplo anterior seria: 9*/ } else if (email_txt.text.indexOf("@") != -1 && email_txt.text.indexOf(".") != -1) { correoCorrecto = true; } else { respuesta_txt.text = "Inserte una direccion de correo correcta"; //email_txt.text=""; correoCorrecto = false; return; } if (correoCorrecto) { form_lv = new LoadVars(); // mete los datos que se van a enviar // NOMBRE form_lv.nombre = nombre_txt.text; // EMAIL form_lv.email = email_txt.text; // CONSULTA form_lv.consulta = consulta_txt.text; // ARCHIVO ADJUNTO form_lv.Filedata = file.name; // se envian los datos form_lv.sendAndLoad("envio.php", form_lv, "POST"); respuesta_txt.text = "Enviando Mensaje..."; gotoAndStop("gracias"); // borra los datos para simular que se han enviado nombre_txt.text = ""; email_txt.text = ""; consulta_txt.text = ""; respuesta_txt.text = ""; form_lv.onLoad = function() { trace("LLEGÓ"); if (this.estatus == "ok") { respuesta_txt.text = "Su mensaje fue enviado. Muchas gracias."; // borra nombre_txt.text = ""; email_txt.text = ""; comnsulta_txt.text = ""; } else { respuesta_txt.text = "Problemas con el servidor. Intentelo de nuevo"; } }; } // si alguno de los campos obligatorios no se ha rellenado } else { respuesta_txt.text = "Debe rellenar todos los campos y aceptar la política"+"\n"; respuesta_txt.text += "de privacidad"; } }; // PARA BORRAR LOS DATOS DE LOS CAMPOS borrar = function () { nombre_txt.text = ""; email_txt.text = ""; consulta_txt.text = ""; respuesta_txt.text = ""; }; //ACCIONES DE LOS BOTONES adjuntar_btn.onRelease = subir; enviar_btn.onRelease = enviar; borrar_btn.onRelease = borrar;
Muchas gracias.