Comunidad de diseño web y desarrollo en internet online

formulario, as1 flash 6 a As2 flas 8

Citar            
MensajeEscrito el 29 Sep 2008 08:18 pm
Señores buen día, resulta que hace algún tiempo utilice un formulario que estaba en as1, creo que flas 6, después de un tiempo la página en la que lo utilice ya no recibía ningún dato de este formulario, se hicieron algunas aplicaciones y el formulario debía estar en AS2 y flash 8, a raíz de este cambio el botón que limpiaba la información dejo de funcionar y de hecho el formulario ya no funcionaba tampoco, me gustaría saber que se puede hacer para que funcione, a continuación dejo los archivos adjuntos incluyendo el .php:

http://es.geocities.com/juliovcmc83/pruebas/formulario.zip

y esta es la linea de código utilizada en el archivo:

Código ActionScript :

stop();
// --------------------------------------------------------------
// función que valida números
// --------------------------------------------------------------
String.prototype.isNumbers = function() {
   if (this.length<1) {
      return false;
   }
   for (i=0; i<this.length; i++) {
      code = this.charCodeAt(i);
      if (this.charAt(i) != " " && code<48 || code>57) {
         return false;
      }
   }
   return true;
};
// --------------------------------------------------------------
// valida mails
// --------------------------------------------------------------
String.prototype.isMail = function() {
   if (this.indexOf("@")>0 && this.indexOf("@") == this.lastIndexOf("@")) {
      if (this.lastIndexOf(".")>this.indexOf("@")+1 && this.lastIndexOf(".")<this.length-2) {
         return true;
      }
   }
};
// --------------------------------------------------------------
// función que limpia los campos
// --------------------------------------------------------------
function limpiar() {
   nom = "";
   telefono = "";
   mailFrom = "";
   body = "";
   mensaje_error =""
}
// --
nombre.tabIndex = 1;
tel.tabIndex = 2;
mail.tabIndex = 3;
msg.tabIndex = 4;
// --
nombre.borderColor = 0xAACD79;
tel.borderColor = 0xAACD79;
mail.borderColor = 0xAACD79;
msg.borderColor = 0xAACD79;
//
nombre.onSetFocus = function() {
   mensaje_error = "";
   nombre.backgroundColor = 0xFFE7D7;
   nombre.borderColor = 0xFF8D42;
};
nombre.onKillFocus = function() {
   nombre.backgroundColor = 0xF3FAED;
   nombre.borderColor = 0xAACD79;
};
// --
tel.onSetFocus = function() {
   mensaje_error = "";
   tel.backgroundColor = 0xFFE7D7;
   tel.borderColor = 0xFF8D42;
};
tel.onKillFocus = function() {
   tel.backgroundColor = 0xF3FAED;
   tel.borderColor = 0xAACD79;
};
//
mail.onSetFocus = function() {
   mensaje_error = "";
   mail.backgroundColor = 0xFFE7D7;
   mail.borderColor = 0xFF8D42;
};
mail.onKillFocus = function() {
   mail.backgroundColor = 0xF3FAED;
   mail.borderColor = 0xAACD79;
};
//
msg.onSetFocus = function() {
   mensaje_error = "";
   msg.backgroundColor = 0xFFE7D7;
   msg.borderColor = 0xFF8D42;
};
msg.onKillFocus = function() {
   msg.backgroundColor = 0xF3FAED;
   msg.borderColor = 0xAACD79;
};
//
bEnviar.onRollOver = bLimpiar.onRollOver=function () {
   this.gotoAndPlay("sobre");
};
bEnviar.onRelease = function() {
   if (nom.length<1) {
      mensaje_error = "Por favor introduzca su nombre";
   } else if (telefono.length<7 or telefono.isnumbers() == false) {
      mensaje_error = "Por favor, introduzca un teléfono de contacto";
   } else if (!mail.text.isMail()) {
      mensaje_error = "Por favor, introduzca e-mail válido";
   } else {
      loadVariablesNum("form.php", 0, "POST");
      limpiar()
      mensaje_error = "Mensaje enviado con exito";
      }
};
// --
bLimpiar.onRelease = function() {
   limpiar();
};

Por juliovanegas

Claber

161 de clabLevel



Genero:Masculino  

Publicista

firefox
Citar            
MensajeEscrito el 30 Sep 2008 09:36 am
En general debería funcionar. Hay algunos pequeños errores de capitalización, por ejemplo tienes isnumbers() en vez de isNumbers() (en AS2 debes respetar mayúsculas/minúsculas) y usas loadVariables en vez de LoadVars, pero nada grave. Lo primero: ¡te da error al publicar?

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 30 Sep 2008 02:18 pm
La verdad no me genera error al publicar, es solo que al ponerlo en as1 y versión 6 funciona a la perfección, se acopla con el php, manda un mail al correo que el usuario copia en el espacio de mail y llega al correo que yo pongo como predeterminado en el .php, ahora bien se crearon algunas aplicaciones en as2 y flash 8, este formulario se llama mediante loadMovie a un .swf principal, pero al ponerlo en as2 y flash 8, lo primero que no funciona es el botón de limpiar, ni siquiera realiza el onRollover para el que se programo, aparte de eso el botón de enviar una ves se le da clic debería limpiar todos los campos de texto cosa que no hace y para acabar de ajustar una ves que el archivo se sube a un servidor, no manda el mail de confirmación que debería mandar y no llega ningún dato al mail que se programo en el php, me preocupa mucho porque en este momento las personas pueden escribir los datos en el formulario y nunca nos vamos a dar cuenta quien escribió y al usuario nunca le va llegar la confirmación. Que puede ser, no tengo ídea, pero agradecería mucho la ayuda que ustedes me pudieran prestar, por eso añadí el link del archivo en flash con el respectivo php: http://es.geocities.com/juliovcmc83/pruebas/formulario.zip ya que ustedes ven errores leyendo el código inmediatamente, yo no soy tan bueno con el código, si se pueden cambiar algunas cosas e incluso mejorar otras les quedaría muy agradecido.

Por juliovanegas

Claber

161 de clabLevel



Genero:Masculino  

Publicista

firefox
Citar            
MensajeEscrito el 30 Sep 2008 02:20 pm

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 30 Sep 2008 02:32 pm
ok, yo el archivo lo mande para que usted mismo constatará que no funciona, no lo mande para que me lo arregle y me lo mande, quiero saber donde esta el problema y ya organice lo del lenguaje en Mayúsculas y Minúsculas y sin embargo sigue igual, de todas maneras gracias por su valiosa ayuda.

Por juliovanegas

Claber

161 de clabLevel



Genero:Masculino  

Publicista

firefox
Citar            
MensajeEscrito el 30 Sep 2008 02:48 pm
Entonces no hace falta el archivo, con tu palabra vale, ¿para que perderías el tiempo posteando sino?

Pues lo dicho, posiblemente el archivo principal no esté en AS2

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 30 Sep 2008 03:19 pm
Lo estoy ensayando desde el mismo archivo sin llamarlo a la película de tiempo principal, y bueno ya por lo menos llega algo jajaja. pero solo llega la información de los campos pero sin lo que el usuario digita en ellos, primero el remitente que aparece es desconocido y debería aparecer el nombre que la persona escribio en el campo destinado para este:

para usuario

, le envía el siguiente mensaje:

Teléfono:
E-mail:
Comments:

no manda ningún dato fuera de los que están programados en el php:

<?
$to = "[email protected]";
$subject = "Gustos Saludables";
$msg = "$nom, le envía el siguiente mensaje:\n\n";
$msg .= "Teléfono: $telefono\n";
$msg .= "E-mail: $mailFrom\n";
$msg .= "Comments: $body\n";
mail($to, $subject, $msg, "from: $mailFrom");
mail($mailfrom, "CONFIRMACION", "Su mensaje ha sido recibido. Gracias", "from: $to");

?>

En teoría debería funcionar, pero no funciona,

Segundo ya funciona el botón limpiar ya hace el onRollover y si tenías razón era porque estaba escrito como blimpiar y se llama era como bLimpiar, por esa letra en mayúscula no lo reconocía, pero entonces ya cuando le das clic borra todos los campos menos el de mail, mira el código ya creo que esta cómo debería estar:

Código ActionScript :

stop();
// --------------------------------------------------------------
// función que valida números
// --------------------------------------------------------------
String.prototype.isNumbers = function() {
   if (this.length<1) {
      return false;
   }
   for (i=0; i<this.length; i++) {
      code = this.charCodeAt(i);
      if (this.charAt(i) != " " && code<48 || code>57) {
         return false;
      }
   }
   return true;
};
// --------------------------------------------------------------
// valida mails
// --------------------------------------------------------------
String.prototype.isMail = function() {
   if (this.indexOf("@")>0 && this.indexOf("@") == this.lastIndexOf("@")) {
      if (this.lastIndexOf(".")>this.indexOf("@")+1 && this.lastIndexOf(".")<this.length-2) {
         return true;
      }
   }
};
// --------------------------------------------------------------
// función que limpia los campos
// --------------------------------------------------------------
function limpiar() {
   nom = "";
   telefono = "";
   mailFrom = "";
   body = "";
   mensaje_error =""
}
// --
nombre.tabIndex = 1;
tel.tabIndex = 2;
mail.tabIndex = 3;
msg.tabIndex = 4;
// --
nombre.borderColor = 0xAACD79;
tel.borderColor = 0xAACD79;
mail.borderColor = 0xAACD79;
msg.borderColor = 0xAACD79;
//
nombre.onSetFocus = function() {
   mensaje_error = "";
   nombre.backgroundColor = 0xFFE7D7;
   nombre.borderColor = 0xFF8D42;
};
nombre.onKillFocus = function() {
   nombre.backgroundColor = 0xF3FAED;
   nombre.borderColor = 0xAACD79;
};
// --
tel.onSetFocus = function() {
   mensaje_error = "";
   tel.backgroundColor = 0xFFE7D7;
   tel.borderColor = 0xFF8D42;
};
tel.onKillFocus = function() {
   tel.backgroundColor = 0xF3FAED;
   tel.borderColor = 0xAACD79;
};
//
mail.onSetFocus = function() {
   mensaje_error = "";
   mail.backgroundColor = 0xFFE7D7;
   mail.borderColor = 0xFF8D42;
};
mail.onKillFocus = function() {
   mail.backgroundColor = 0xF3FAED;
   mail.borderColor = 0xAACD79;
};
//
msg.onSetFocus = function() {
   mensaje_error = "";
   msg.backgroundColor = 0xFFE7D7;
   msg.borderColor = 0xFF8D42;
};
msg.onKillFocus = function() {
   msg.backgroundColor = 0xF3FAED;
   msg.borderColor = 0xAACD79;
};
//
bEnviar.onRollOver = bLimpiar.onRollOver=function () {
   this.gotoAndPlay("sobre");
};
bEnviar.onRelease = function() {
   if (nom.length<1) {
      mensaje_error = "Por favor introduzca su nombre";
   } else if (telefono.length<7 or telefono.isNumbers() == false) {
      mensaje_error = "Por favor, introduzca un teléfono de contacto";
   } else if (!mail.text.isMail()) {
      mensaje_error = "Por favor, introduzca e-mail válido";
   } else {
      loadVariablesNum("form.php", 0, "POST");
      limpiar()
      mensaje_error = "Mensaje enviado con exito";
      }
};
// --
bLimpiar.onRelease = function() {
   limpiar();
};


La pregunta es ¿En donde me estoy equivocando?, ¿Por qué no funciona cómo antes?

De nuevo gracias

Por juliovanegas

Claber

161 de clabLevel



Genero:Masculino  

Publicista

firefox
Citar            
MensajeEscrito el 30 Sep 2008 03:29 pm
Chequea que los campos de texto esten asociados a la variable correcta, por ejemplo vías

envías nombre y el PHP busca $nom
envías mail y el PHP busca $mailFrom

No me extraña que no funcione, casi ningún nombre coincide (además de que deberías buscarlo en el array $_POST)

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 30 Sep 2008 04:47 pm
le cambie los nombres de acuerdo a como estaban en flash y ya me aparece esto en mi mail y aún no limpia el texto en mail,, le envía el siguiente mensaje:

Teléfono:
E-mail:
Comments: , le envía el siguiente mensaje:

Teléfono:
E-mail:

php:
<?
$to = "[email protected]";
$subject = "Gustos Saludables";
$msg = "$nombre, le envía el siguiente mensaje:\n\n";
$msg .= "Teléfono: $tel\n";
$msg .= "E-mail: $mail\n";
$msg .= "Comments: $msg\n";
mail($to, $subject, $msg, "from: $mail");
mail($mail, "CONFIRMACION", "Su mensaje ha sido recibido. Gracias por pensar Mejor Natural", "from: $to");
?>

Por juliovanegas

Claber

161 de clabLevel



Genero:Masculino  

Publicista

firefox
Citar            
MensajeEscrito el 30 Sep 2008 04:54 pm
Donde pone

$mail

Debe decir

$_POST[mail]

Y así con cada variable que venga de Flash

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 30 Sep 2008 05:19 pm
mmmm, ya estoy que lloro jajaja, lo puse así:

<?
$to = "[email protected]";
$subject = "Gustos Saludables";
$msg = "$_POST[nombre], le envía el siguiente mensaje:\n\n";
$msg .= "Teléfono: $_POST[tel]\n";
$msg .= "E-mail: $_POST[mail]\n";
$msg .= "Commentarios: $_POST[msg]\n";
mail($to, $subject, $msg, "from: $_POST[mail]");
mail($mail, "CONFIRMACION", "Su mensaje ha sido recibido. Gracias por pensar Mejor Natural", "from: $to");

?>

y aparece esto

, le envía el siguiente mensaje:

Teléfono:
E-mail:
Commentarios:

Por juliovanegas

Claber

161 de clabLevel



Genero:Masculino  

Publicista

firefox
Citar            
MensajeEscrito el 30 Sep 2008 05:22 pm

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 30 Sep 2008 05:44 pm
Gracias hombre, lo voy a leer atentamente, pero creo que estabamos mal enfocados, leí un poco, analice otro poco, utilice las herramientas que me diste y volví al principió. Ya dió el formulario ahora si me funciona, así quedo volviendo a utilizar los nombre que estaban desde un principio pero con $_POST[mail]:

<?
$to = "[email protected]";
$subject = "Gustos Saludables";
$msg = "$_POST[nom], le envía el siguiente mensaje:\n\n";
$msg .= "Teléfono: $_POST[telefono]\n";
$msg .= "E-mail: $_POST[mailfrom]\n";
$msg .= "Comments: $_POST[body]\n";
mail($to, $subject, $msg, "From: $_POST[mailfrom]");
mail($_POST[mailfrom], "CONFIRMACION", "Su mensaje ha sido recibido. Gracias por pensar Mejor Natural", "From: $to");

?>

El mensaje me llega así:

Julio Vanegas, le envía el siguiente mensaje:

Teléfono: 55555555
E-mail: [email protected]
Comments: Yo creo que ahora si dió

Me surgen dos preguntas, la primera, al poner las personas tildes no las reconoce, ¿qué se puede hacer? y la segunda es que aún no he podido hacer que limpie el espacio de mail una ves se le da enviar al formulario o incluso limpiar.

Código ActionScript :

function limpiar() {
   nom = "";
   telefono = "";
   mailFrom = "";
   body = "";
   mensaje_error =""
}


Cambio mailFrom por mail ya que así esta nombrado y ni así funciona.

de nuevo mil gracias por tu ayuda

Por juliovanegas

Claber

161 de clabLevel



Genero:Masculino  

Publicista

firefox
Citar            
MensajeEscrito el 30 Sep 2008 05:46 pm
Mira los nombres de las variables asociadas a los campos de texto y limipialas. Usa utf8_decode() del lado de Flash para interpretar correctamente los textos con tildes

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 30 Sep 2008 05:57 pm
utf8_decode(), lo pongo en el frame de flash?

Por juliovanegas

Claber

161 de clabLevel



Genero:Masculino  

Publicista

firefox
Citar            
MensajeEscrito el 30 Sep 2008 06:03 pm
Nop, en el PHP, sobre la variable que pueda tener acento, por ejemplo:

$nom = utf8_decode($_POST['nom']);

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 30 Sep 2008 06:42 pm
Buen punto, ya me dio la parte del nombre, la puse así

$msg = utf8_decode($_POST['nom']); "le envía el siguiente mensaje:\n\n";

Pero estoy algo confundido con la de los comentarios, y es por las comillas, lo pongo entre las comillas y no me funciona, lo pongo fuera de comillas y támpoco, la verdad no se como utilizar el utf8_decode(),

$msg .= "Comments:" utf8_decode($_POST['body'])\n;

me confundí en esa parte, si me podes orientar te lo agradezco y gracias de nuevo por tu valioso tiempo.

Por juliovanegas

Claber

161 de clabLevel



Genero:Masculino  

Publicista

firefox
Citar            
MensajeEscrito el 30 Sep 2008 06:45 pm
Prueba

$msg .= "Comments:".utf8_decode($_POST['body'])."\n";

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 30 Sep 2008 06:53 pm
Ahora si dio, muchas gracias hombre, ya me voy a enfocar en limpiar completamente el formulario

Por juliovanegas

Claber

161 de clabLevel



Genero:Masculino  

Publicista

firefox
Citar            
MensajeEscrito el 29 Oct 2008 04:14 am
Hola Ahora sigo yo con el mismo problema porque llega el correo sin los datos que se han introducido en el formulario de flash
tuve en cuenta los errores que tenia julio pero aun asi no me funciona. podrian colaborarme para ver que error u horror tengo?
gracias aki pego mi cod
en flash esta asi:

on (release) {
if (( _parent.nom=='') or ( _parent.empa=='') or ( _parent.tel=='') or ( _parent.email=='')or ( _parent.mensaje=='')) {
_parent.rta = "Hay campos obligatorios sin rellenar. Por favor, revise el formulario.";
} else {
loadVariablesNum("mailcontacto.php", 0, "POST");
_parent.rta = "El formulario ha sido enviado con éxito. Nos pondremos en contacto con Ud. lo antes posible. Reciba un saludo.";
}
}

en PHP asi:

<?
$nombre=$_POST[nom];
$email=$_POST[email];
$telefono=$_POST[tel];
$empresa=$_POST[empa];
$mensaje=$_POST[mensaje];

$to = "[email protected]";
$subject = "correo enviardo desde la web de tal";
$msg .= "Nombre: $nombre\n";
$msg .= "Teléfono: $telefono\n";
$msg .= "E-mail: $email\n";
$msg .= "Empresa: $empresa\n";
$msg .= "Mensaje: $mensaje\n";
mail($to, $subject, $msg, "From: $email");
mail($_POST[mail], "From: $to");
?>

Gracias a quien me pueda colaborar :(

Por lita

1 de clabLevel



 

firefox
Citar            
MensajeEscrito el 29 Oct 2008 09:20 am
¿Alguna vez llegó correctamente o nunca funcionó?

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 29 Oct 2008 01:53 pm
Amigo te cuento que mi me funciono perfectamente, con los cambios que ya se hicieron con la ayuda en este foro, aún tengo el pequeño inconveniente para limpiar la parte del e-mail al momento de enviar, pero el formulario llega como debería llegar

Por juliovanegas

Claber

161 de clabLevel



Genero:Masculino  

Publicista

firefox
Citar            
MensajeEscrito el 03 Nov 2008 06:16 pm
Hola de nuevo


El correo llega pero sin los datos que el contacto introduce en el formulario de la web

Por lita

1 de clabLevel



 

firefox
Citar            
MensajeEscrito el 04 Nov 2008 03:05 am
Si queres mando el archivo así lo podes comparar más detalladamente?

Por juliovanegas

Claber

161 de clabLevel



Genero:Masculino  

Publicista

firefox
Citar            
MensajeEscrito el 06 Nov 2008 02:09 pm
Pues seria de gran ayuda que envies tu archivo... =)

Por lita

1 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.