Comunidad de diseño web y desarrollo en internet online

Ayuda con formulario flash + php

Citar            
MensajeEscrito el 09 Jun 2009 09:40 pm
Estimado, espero estar bien ubicado en este foro y no estar posteando donde no corresponde. Les cuento mi problema.
Tengo un formularioen flah con el siguiente codigo:

Código ActionScript :

/*
Esta función se encarga de enviar el email.
Usa un objeto LoadVar para enviar el email y se programa el evento 
onload de dicho objeto para recibirla respuesta del servidor.
*/
function enviar() {
   trace(t_texto.htmlText);
   //se crea un nuevo objeto LoadVars y se carga con los datos que vamos a enviar.
   datos_email.nombre =t_nombre.text;
   datos_email.telefono =t_telefono.text;
   datos_email.pedido =t_pedido.text;
   datos_email.retiro =t_retiro.text;
   datos_email.email =t_email.text;
   datos_email.texto =t_texto.htmlText;
   //
   datos_email.estado ="";
   //Se programa la función que se ejecutara al recibir la respuesta del servidor
   datos_email.onLoad = function() {
      /*
      al ejecutarse la función dentro del objeto loadVars, debemos usar 'this'
      para referirnos a 'datos_email'.
      'estado' es una variable que nos devuelve el scrip php, nos referimos a ella
      como this.estado.
      */
      trace(this);
      trace(this.estado);
      if (this.estado == "enviado") {
         //si el email se ha enviado, vamos al fotograma 2.
         gotoAndStop(3);


Y esto conecta con un php:

Código PHP :

<?php

/*
Este script no hace ninguna validación sobre los datos que se envian desde el formulario,
queda de su parte implementar esta validación si lo cree necesario.
*/
/*
las variables que flash ha enviado usando el metodo post, estan dentro del array asociativo $_POST,
este array guarda todas las variables que se han enviado por post.
$_POST al ser una variable global, esta disponible en todo momento dentro del a ejecución de un script.
para acceder al valor especifico de una variable : $POST['nombre del a variable']
Si quiere mas información sobre $_POST visite: http://es2.php.net/reserved.variables#reserved.variables.post
*/

//estas variables las usaremos en el comando 'mail()' para costruir el email.

   //DEBE CAMBIAR EL VALOR DE $destinatario por la dirección de correo que va a recibir el email:
   $destinatario="[email protected]";
   
   //estos datos se usaran como cabecera del email.
   $cabeceras="MIME-Version: 1.0\r\n";
   $cabeceras .= "Content-type: text/html; charset=utf-8\r\n";
   $cabeceras.="From: {$_POST['nombre']}<{$de}>\r\n";
   $cabeceras.="Reply-To: {$_POST['email']}\r\n";
   //el asunto del mensaje:
   $asunto="Pedidos en linea | Vitacura";
   //El cuerpo del mensaje:
   $cuerpo=' Hemos recibido un pedido desde la sucursal Vitacura de '.$_POST['nombre'].' con el siguiente contenido:';
   $cuerpo.='<br>'.$_POST['texto'].'<br>';
   $cuerpo.='Fecha del pedido:'.$_POST['pedido'].'<br>';
   $cuerpo.='<br>Hora de retiro:'.$_POST['retiro'].'<br>';
   $cuerpo.='<br> El telefono de '.$_POST['nombre'].' es '.$_POST['telefono'].' y su correo es '.$_POST['email'].'<br>';
   //la persona wue envia el email.
   $de=$_POST['email'];

/*
el comando 'mail(destinatario,asunto,cuerpo del mensaje, [parametros adicionales])'
 envia un email y devuelve true si el email fue aceptado para su envio, 
 encaso contrario devuenve false.
Para mas información sobre 'mail()' visite: http://es2.php.net/manual/es/function.mail.php
*/

   if(mail($destinatario, $asunto, $cuerpo,$cabeceras)){
      echo utf8_encode('&estado=enviado');    
    }else{
       echo utf8_encode('&estado=no_enviado');   
    } 
    
/*TEN CUIDADO DE NO ESCRIBIR NINGUN CARACTER DESPUES DE LA ETIQUETA '?>' NI ANTES DE '<?php'  si hay
un espacio en blanco, un retorno de carro o cualquier otro caracter puede que el script 
no funcione correctamente.
*/
?>


Mi pregunta es: Alguien sabe como validar estos campos? necesito que si estan en blanco "no envie" y si estan completos al menos con un caracter "envie"

Agradesco muchisimo su ayuda.

Saludos a todos.

Por ceromascero

1 de clabLevel



 

firefox
Citar            
MensajeEscrito el 09 Jun 2009 10:28 pm

Código ActionScript :

if(t_nombre.text=""){//todo el codigo para enviar}

o también

Código ActionScript :

ift_nombre.text.length){//envia }

Por nasho

Claber

908 de clabLevel

1 tutorial

Genero:Masculino  

Web Developer

firefox
Citar            
MensajeEscrito el 10 Jun 2009 05:30 pm
Perdona mi ignoracia pero no entendi tu respuesta. Gracias de todas maneras.

Por ceromascero

1 de clabLevel



 

firefox
Citar            
MensajeEscrito el 10 Jun 2009 09:30 pm
cuando abres y cierras comillas le estas diciendo al programa que no tiene caracteres por lo tanto

Código ActionScript :

if(t_nombre.text!=""){
//acciones
}

le estas diciendo si t_nombre es diferente (!=) a nada ("") ejecuta las acciones

o el length es para ver cuantos caracteres tiene, entonces

Código ActionScript :

if(t_nombre.text.length){
//acciones
}

dice cuantos caracteres tiene t_nombre, si es 0 entonces el resultado es false, si es cualquier otro le resultado va a ser true y va a ejecutar las acciones

Por nasho

Claber

908 de clabLevel

1 tutorial

Genero:Masculino  

Web Developer

firefox

 

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