Comunidad PHPeros

Lenguajes => Flash y ActionScript => Mensaje iniciado por: aguskpo en 16 de Abril de 2008, 01:41:01 am

Título: Enviar formulario :) (con flash y PHP)
Publicado por: aguskpo en 16 de Abril de 2008, 01:41:01 am
Hola!!!
Necesito ayuda, porque no se como hacer un formulario en flash
Me ayudan?
Título: Re: Enviar formulario :) (con flash y PHP)
Publicado por: RamFu en 16 de Abril de 2008, 09:31:03 am
Esta algo difícil con Flash y PHP pero creo que llegaremos a algo. Vamos por partes primero.
No se si recuerdas mi tutorial de login + registro de usuarios en flash. Date una vuelta por el foro y lo encontrarás =). Bueno, pues en ese tutorial se explicaba cómo conectar con flash mediante php y php usando flash usando loadvars(); como función de carga en php.

Aspectos a tener en cuenta

La función mail en php es una función que nos permite enviar correos, si la personalizamos un poco. Un ejemplo sería:
<?php
mail("micorreo@midominio.com", "Asunto del mensaje", "Cuerpo del mensaje");
?>

Bueno, ahora que mas o menos sabemos cómo usar la función mail, vamo scon el formulario, recuerdo que el ejemplo de arriba no es ningún archivo que vayamos a utilizar en el tutorial, es solo un ejemplo para explicar cómo funciona 'mail' en php =).

Manos a la obra!

Creamos un nuevo archivo FLA, que contenga 4 campos. 4 campos imprescindibles, básicos que són: Nombre, Email, Asunto y Mensaje. Lo haremos así:

Nombre -> Introducción de texto con el nombre 'nombre_txt'
Email -> Introducción de texto con el nombre 'mail_txt'
Asunto -> Introducción de texto con el nombre 'asunto_txt'
Mensaje -> Introducción de texto con el nombre 'mensaje_txt'

Ahora, creamos dos botones, uno para enviar y otro para reestablecer el formulario. Enviar y Reestablecer:

Enviar
Nombre: 'enviar_btn'
Acciones
Ninguna.

Reestablecer
Nombre: 'borrar_btn'
Acciones
Ninguna.

Bien, ahora que tenemos la estructura de nuestro formulario, vamos al fotograma y le damos las siguientes acciones:

// Función enviar
enviar = function () {
    if (email_txt.text.length && nombre_txt.length && titulo_txt.length && mensaje_txt.length) {
        if (email_txt.text.indexOf("@") != -1 && email_txt.text.indexOf(".") != -1) {
            form_lv = new LoadVars();
            form_lv.nombre = nombre_txt.text;
            form_lv.mail = email_txt.text;
            form_lv.mensaje = mensaje_txt.text;
            form_lv.asunto = asunto_txt.text;
            form_lv.sendAndLoad("http://www.miweb.com/enviarFormulario.php", form_lv, "POST");
            mensaje_txt.text = "Enviando Mensaje..";
            nombre_txt.text = "";
            email_txt.text = "";
            asunto_txt.text = "";
            form_lv.onLoad = function() {
                if (this.estatus == "ok") {
                    mensaje_txt.text = "Tu mensaje fue enviado...";
                    nombre_txt.text = "";
                    email_txt.text = "";
                    asunto_txt.text = "";
                } else {
                    mensaje_txt.text = "Problemas con el servidornIntentalo de Nuevo";
                }
            };
        } else {
            email_txt.text = "Correo Invalido";
        }
    } else {
        email_txt.text = "Dato Necesario";
        nombre_txt.text = "Dato Necesario";
        asunto_txt.text = "Dato Necesario";
        mensaje_txt.text = "Dato Necesario";
    }
};

// Enviamos las variables al php
form_lv_lv = new LoadVars();
form_lv.nombre = nombre_txt.text;
form_lv.mail = email_txt.text;
form_lv.mensaje = mensaje_txt.text;
form_lv.asunto = asunto_txt.text;
form_lv.sendAndLoad("send.php", form_lv, "POST");
    mensaje_txt.text = "Enviando, espere...";
}

// Funciones para el botón
enviar_btn.onRelease = enviar;
borrar_btn.onRelease = borrar;


Seguimos con el php.

<?php
            if(isset($_POST["nombre"]) && isset($_POST["asunto"]) isset($_POST["email"])
            isset($_POST["mensaje"]) ){
            $fecha = date("d-M-y H:i");
            $mymail = "micorreo@midominio.com";
            $subject = "Formulario web!";
            $contenido = $nombre." Escribio el ".$fecha." :"\n";
            $contenido .= $mensaje."\n\n";
            $header = "Desde:".$mail."\nResponder a:".$mail."\n";
            $header .= "X-Mailer:PHP/".phpversion()."\n";
            $header .= "Mime-Version: 1.0\n";
            $header .= "Content-Type: text/plain";
            mail($mymail, $subject, utf8_decode($contenido) ,$header);
            echo "&estatus=ok&";
            }
            ?>

Yo aprendí a hacerlo aquí. (http://www.maestrosdelweb.com/editorial/fflashphpform/)
Espero que te srivaa!!
Título: Re: Enviar formulario :) (con flash y PHP)
Publicado por: aguskpo en 18 de Abril de 2008, 20:48:36 pm
RamFu, me salvaste la vida man!
Te devo muchas!!
Título: Re: Enviar formulario :) (con flash y PHP)
Publicado por: RamFu en 18 de Abril de 2008, 23:48:05 pm
De nada =)
Título: Re: Enviar formulario :) (con flash y PHP)
Publicado por: Tope en 19 de Abril de 2008, 09:35:37 am
Pd. RamFu, te has comido (lo vuelvo a decir.. literalmenteee..) un punto `.´ en ".$fecha" es ".$fecha."  y las barras invertidas no funcionan, es una cosa de la que me doy cuenta ahora!! jaja
Título: Re: Enviar formulario :) (con flash y PHP)
Publicado por: RamFu en 21 de Abril de 2008, 16:43:40 pm
:o mersi tope, lo acabo de rectificar =)