1. ¡OFERTA! con cupón "DIRVPS": hosting por $0,01 y también VPS Linux y Windows por $0,01 el primer mes por Interserver ← publi
    Descartar aviso
Descartar aviso
Al usar este sitio web, aceptas que nosotros y nuestros socios podamos establecer cookies para fines tales como personalizar el contenido y la publicidad. Más información.

Tutorial Formulario en Flash y PHP [Envio a correo]-Medio

Tema en 'Tutoriales Desarrollo Web' iniciado por kitsch, 21 Ene 2005.

  1. kitsch

    kitsch Nuevo usuario

    Ultimamente me han surgido varias consultas de como se hace esto, por lo que desidi hacer un tutorial de esto (con un codigo de un amigo je je :twisted: ) ya que la verdad no tiene mucha dificultad que digamos.

    1*Comenzamos creando una pelicula en la cual incluiremos nuestro formulario.
    2*Creamos cuatro campos de texto, los que seran: nombre, email, titulo, mensaje; con las siguientes propiedades:
    -Introduccion de texto
    -'nombre'_txt

    <b>Nota: Sustuimos el nombre entre comillas por el nombre de nuestro campo, quedando de la siguiente manera:

    Nombre=nombre_txt
    email=email_txt
    asunto=titulo_txt
    mensaje=mensaje_txt</b>

    Ademas de crear un MovieClip, el que tendra la funsion del boton.

    3* Ahora creamos cuatro textos simples para rotular cada cuadro de texto, quedando de la siguiente manera:
    <img src="http://img84.exs.cx/img84/7590/form3ca.jpg" border="0" alt="Imagen IPB" />
    Si no exactamente, la idea es esa.

    4*Ahora creamos un archivo PHP al que nombraremos 'enviar.php' con el siguiente codigo
    <!--c1--><div class='codetop'>CÓDIGO</div><div class='codemain'><!--ec1--><?php

    if(isset($_POST["nombre"]) && isset($_POST["titulo"]) && isset($_POST["mail"]) && isset($_POST["mensaje"]) ){

    &nbsp; &nbsp;$fecha = date("D-M-y H:i");

    &nbsp;&nbsp;&nbsp;&nbsp;$mymail = "elcorreo@tu_servidor.com";

    &nbsp;&nbsp;&nbsp;&nbsp;$subject = "Desde el Sitio.. =)";

    &nbsp;&nbsp;&nbsp;&nbsp;$contenido = $_POST["nombre"]." Escribio :n";

    &nbsp;&nbsp;&nbsp;&nbsp;$contenido .= $_POST["mensaje"]."nn";

    &nbsp;&nbsp;&nbsp;&nbsp;$contenido .= "el mensaje se escribio el ".$fecha;

    &nbsp;&nbsp;&nbsp;&nbsp;$header = "From:".$_POST["mail"]."nReply-To:".$_POST["mail"]."n";

    &nbsp;&nbsp;&nbsp;&nbsp;$header .= "X-Mailer:pHP/".phpversion()."n";

    &nbsp;&nbsp;&nbsp;&nbsp;$header .= "Mime-Version: 1.0n";

    &nbsp;&nbsp;&nbsp;&nbsp;$header .= "Content-Type: text/plain";

    &nbsp;&nbsp;&nbsp;&nbsp;mail($mymail, $subject, utf8_decode($contenido) ,$header);

    &nbsp;&nbsp;&nbsp;&nbsp;echo "&estatus=ok&";

    }

    ?><!--c2--></div><!--ec2-->

    Este lo subes a tu servidor. Ejemplo: http//www.2waymultimedia.com/enviar.php

    5*Ahora regresamos al flash y empezamos con el ActionScript, en el primer fotograma insertamos el siguiente codigo:
    <!--c1--><div class='codetop'>CÓDIGO</div><div class='codemain'><!--ec1-->enviar = function () {

    &nbsp;&nbsp;&nbsp;&nbsp;if (email_txt.text.length && nombre_txt.length && titulo_txt.length && mensaje_txt.length) {

    &nbsp;if (email_txt.text.indexOf("@") != -1 && email_txt.text.indexOf(".") != -1) {

    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;form_lv = new LoadVars();

    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;form_lv.nombre = nombre_txt.text;

    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;form_lv.mail = email_txt.text;

    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;form_lv.mensaje = mensaje_txt.text;

    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;form_lv.titulo = titulo_txt.text;

    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;form_lv.sendAndLoad("http://www.tusitio.com/enviar.php", form_lv, "POST");

    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mensaje_txt.text = "Enviando Mensaje..";

    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;nombre_txt.text = "";

    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;email_txt.text = "";

    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;titulo_txt.text = "";

    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;form_lv.onLoad = function() {

    &nbsp; &nbsp;trace("LLEGO");

    &nbsp; &nbsp;if (this.estatus == "ok") {

    &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mensaje_txt.text = "Tu mensaje fue enviado...";

    &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;nombre_txt.text = "";

    &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;email_txt.text = "";

    &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;titulo_txt.text = "";

    &nbsp; &nbsp;} else {

    &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mensaje_txt.text = "Problemas con el servidornIntentalo de Nuevo";

    &nbsp; &nbsp;}

    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};

    &nbsp;} else {

    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;email_txt.text = "Correo Invalido";

    &nbsp;}

    &nbsp;&nbsp;&nbsp;&nbsp;} else {

    &nbsp;email_txt.text = "Dato Necesario";

    &nbsp;nombre_txt.text = "Dato Necesario";

    &nbsp;titulo_txt.text = "Dato Necesario";

    &nbsp;mensaje_txt.text = "Dato Necesario";

    &nbsp;&nbsp;&nbsp;&nbsp;}

    };

    borrar = function () {

    &nbsp;&nbsp;&nbsp;&nbsp;nombre_txt.text = "";

    &nbsp;&nbsp;&nbsp;&nbsp;email_txt.text = "";

    &nbsp;&nbsp;&nbsp;&nbsp;mensaje_txt.text = "";

    &nbsp;&nbsp;&nbsp;&nbsp;titulo_txt.text = "";

    };

    enviar_btn.onRelease = enviar;

    borrar_btn.onRelease = borrar;

    <!--c2--></div><!--ec2-->

    Si todo esta hecho correctamente, se enviara el texto a tu cuenta de correo. Saludos :wink:
     
  2.  
  3. kahlito

    kahlito Nuevo usuario

    Muy bueno kitsch, tiene muy buena pinta, espero hacerlo en cuanto tenga tiempo, la verdad es que viene muy bien. :)

    Gracias :wink:
     
  4. Faraon

    Faraon Supremo Egipcio

    Kitsch una pregunta, el boton que mencionas de movie clip hay que hacerlo o el codigo anterior a eso es la creacion del boton, perdona pero en esto soy bien tarado :evil:

    Abrazos
     
  5. kitsch

    kitsch Nuevo usuario

    je je je Parece que no me explique bien, el MC es solo fondo, ¿Me explico? Es para ponerlo detras de los textos: enviar, cancelar. El script reconoce estos textos simples como botones, el MC es digamos de relleno.
     
  6. Faraon

    Faraon Supremo Egipcio

    Ahora una pregunta mas, si yo hago este formulario que pones y le adjunto o incorporo los codigos en dreamweaver funcionara.

    Abrazos. :wink:
     
  7. kitsch

    kitsch Nuevo usuario

    No te entiendo bien, pero creo que te refieres al archivo "enviar.php"?

    Si es asi, puedes incrustarlo en algun archivo tuyo, solo que no se mostrara la pagina; ¿Me explico? El archivo php es solo para ejecute la accion.
     
  8. Neo

    Neo Nuevo usuario

    excelente tuto kitsch, gracias por compartirlo!

    saludos 8)
     
  9. Faraon

    Faraon Supremo Egipcio

    Te preguntaba eso del Dw, porque uno puedo hacer el formulario que dices ahi, solo que el problema esta en el envio, que pide el outlook.

    Abrazos
     
  10. salus

    salus Nuevo usuario

    y una pregunta donde esta en el codigo para poner mi email, para que llegue a mi email, no lo veo.
    y tb en el boton enviar que s epone?
     
  11. salus

    salus Nuevo usuario

    a vale ya lo veo,
    pero insisto con la siguiente pregunta,
    dices que hay que poner el codigo que describes en el primer fotograma, pero en el boton ENVIAR que hay que poner?
     
  12. salus

    salus Nuevo usuario

    si no pongo ningun movieclip funcionaria igual verdad?
     
  13. kitsch

    kitsch Nuevo usuario

    Asi es, como le explicaba a Faraon, el MC solo es relleno; ya que el script hace referencia al texto y no al boton.
     
  14. oldskull

    oldskull Nuevo usuario

    podrias poner el .fla,para verlo detenidamenet? eske me da un error al enviar,
    pongo todos los datos y me sale en los campos "Datos necesarios"
     
  15. edblood

    edblood Guest

    gracias por este tutorial que esta genial

    saludos yo hice un fla (modifique un poco tanto el fla como el enviar.php

    para los que quieran el archivo mandenme un mensaje porque ya se me trono el hosp ejejje




    y los codigos son los siguientes:


    enviar.php

    //scrip escrito por kitsh, modificado por omarvelazquez.a@gmail.com

    <?php
    if(isset($_POST["nombre"]) && isset($_POST["titulo"]) && isset($_POST["mail"]) && isset($_POST["mensaje"]) ){

    $fecha = date("D-M-y H:i");
    $mymail = "correo@dominio.com";
    $subject = $_POST["titulo"]."\n"; //cambie el subjet que tenia para que realmente aparezca el titulo que le ponen
    $contenido = $_POST["nombre"]." Escribio: \n"; //el escript no tiene las diagonales por lo tanto aparece una n en vez de un espacio
    $contenido .= $_POST["mensaje"]."\n\n";
    $contenido .= " El mensaje se escribio el: ".$fecha;
    $header = "From:".$_POST["mail"]."";
    mail($mymail, $subject, utf8_decode($contenido) ,$header); // le quite varios heads porque dan error o muestran basura
    echo "&estatus=ok&";
    }


    ?>





    ----------------

    y lo de flash



    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.titulo = titulo_txt.text;

    form_lv.sendAndLoad("enviar.php", form_lv, "POST");

    status_txt.text = "Enviando Mensaje.."; // agregue un campo de estatus para que los usuarios no se confundan

    mensaje_txt.text = "";

    nombre_txt.text = "";

    email_txt.text = "";

    titulo_txt.text = "";

    form_lv.onLoad = function() {

    trace("LLEGO");

    if (this.estatus == "ok") {

    status_txt.text = "Tu mensaje se ha enviado"; //aqui esta de nuevo

    mensaje_txt.text = "";

    nombre_txt.text = "";

    email_txt.text = "";

    titulo_txt.text = "";

    } else {

    status_txt.text = "Problemas con el servidor Intentalo de Nuevo"; //igual aqui


    }

    };

    } else {

    email_txt.text = "Correo Invalido";

    }

    } else {

    email_txt.text = "Dato Necesario";

    nombre_txt.text = "Dato Necesario";

    titulo_txt.text = "Dato Necesario";

    mensaje_txt.text = "Dato Necesario";

    }

    };

    borrar = function () {

    nombre_txt.text = "";

    email_txt.text = "";

    mensaje_txt.text = "";

    titulo_txt.text = "";

    };



    //lo del status_txt igual lo puse como texto dinamico y sin fondo para que solo se lea al haber algun -satus- jejejej

    enviar_btn.onRelease = enviar;

    borrar_btn.onRelease = borrar;
     
  16. kitsch

    kitsch Nuevo usuario

    Esta bueno el nuevo diseño, gracias por el aporte ;)
     
  17. edblood

    edblood Guest

    <!--quoteo(post=176057:date=Dec 21 2006, 11:18 PM:name=kitsch)--><div class='quotetop'>CITA(kitsch @ Dec 21 2006, 11:18 PM) [snapback]176057[/snapback]</div><div class='quotemain'><!--quotec-->
    Esta bueno el nuevo diseño, gracias por el aporte ;)
    <!--QuoteEnd--></div><!--QuoteEEnd-->


    un granito de sal por un costal de arena compadre! :D :drunk:
     
  18. jug320

    jug320 Nuevo usuario

    <!--quoteo(post=176207:date=Dec 22 2006, 11:05 AM:name=edblood)--><div class='quotetop'>CITA(edblood @ Dec 22 2006, 11:05 AM) [snapback]176207[/snapback]</div><div class='quotemain'><!--quotec-->
    un granito de sal por un costal de arena compadre! :D :drunk:
    <!--QuoteEnd--></div><!--QuoteEEnd-->
    hola que tal mi pregunta es donde puedo hacer uso de este tipo de formularios pues e intentado una infinidad de codigos distintos pero parece ser que donde esta ospedada mi web no lo acepta www.iespana.es espero me puedan ayudar con esto, gracias
     
  19. elQuique

    elQuique Usuario activo

    jug320, bienvenido al foro :)

    el codigo lo puedes usar en cualquier servidor que tenga soporte PHP y no tenga filtrado el envio de emails.

    Formulario de Contacto enviar mail con PHP
    <a href="http://www.tallerwebmaster.com/Tutorial-Formulario-de-Contacto-enviar-mail-con-PHP-c-43.html" target="_blank">http://www.tallerwebmaster.com/Tutorial-Fo...n-PHP-c-43.html</a>

    Crear Formulario de Contacto con Dreamweaver
    <a href="http://www.tallerwebmaster.com/Tutorial-Crear-Formulario-de-Contacto-con-Dreamweaver-c-42.html" target="_blank">http://www.tallerwebmaster.com/Tutorial-Cr...eaver-c-42.html</a>

    ahi tienes otra explicacion del codigo de envio y el formulario.
     
  20. Sarima

    Sarima Usuario activo

    a ver si lo he entendido bien, lo que habría que cambiar, sería en el php poner mi mail en lugar de "elcorreo@tu_servidor.com" y en el flash la dirección en mi web del enviar.php en lugar de "http://www.tusitio.com/enviar.php"

    Pues una vez hecho eso, subido y enviando un mensaje de prueba me sale el mensaje de "Problemas con el servidornIntentalo de Nuevo"

    ¿Alguien tiene idea de qué hice mal?
     
  21. Sarima

    Sarima Usuario activo

    Bueno, no he conseguido que funcionara, pero por si a alguien le ocurre lo mismo he encontrado este tutorial en php que no utiliza flash ni queda tan aparente, pero funciona muy bien:

    <a href="http://alexsancho.name/archives/2005/02/formulario-de-contacto-con-php/" target="_blank">http://alexsancho.name/archives/2005/02/fo...ntacto-con-php/</a>
     


Alojamiento web, Hosting Reseller, Servidores Dedicados - All in Hosting


    
    
    
    
Blog · Sitios amigos: GuiaHosting · Unidominios · Interalta ·