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.
